文字檔的讀取

引入: System.IO

 

純文字檔的讀寫可以做到許多很方便的事,即使這不一定很安全。

讀寫文字檔前,我們要先引入System.IO,然後使用System.IO.File 的函式。

宣告一個專用的執行個體System.IO.StreamReader(檔案路徑, 格式),這個執行個體在宣告時就已經定型,意思是: 他不是一個函式,所以你不能中途改變他所帶參數裡的檔案路徑,你只能去改變那個路徑的變數值。

 

例如: 我把System.IO.StreamReader 的檔案路徑直接用一個常數填入,因為常數不能變更,因此這個System.IO.StreamReader 以後只能讀取這個常數做為檔案路徑(除非ReDim)。

]Dim testReader As New System.IO.StreamReader("C:\test.txt", System.Text.Encoding.UTF8) //在宣告System.IO.StreamReader 時,這個執行個體的設定就已經定型,寫手輸入了"C:\test.txt" 就代表之後在使用這個個體時,他會去讀取"C:\test.txt" 這個檔案

 

如果我把System.IO.StreamReader 裡的檔案路徑用一個變數表示,那麼以後在使用這個個體時,他就會去讀取這個變數做為檔案路徑。

]Dim testPath As String = "C:\test.txt"

]Dim testReader As New System.IO.StreamReader(testPath, System.Text.Encoding.UTF8) //System.IO.StreamReader 的參數已經被定型,每次使用這個執行個體時,他會去尋找"testPath" 這個變數,把他做為檔案路徑

 

System.IO.StreamReader 在讀取文字檔案時,是一行一行讀取,你要用迴圈去驅動他。使用的方法是ReadLine(),當他讀完的時候,ReadLine 傳回值應該是Nothing。

]Dim testString As String = Nothing

]Dim testReader As New System.IO.StreamReader("C:\test.txt", System.Text.Encoding.UTF8)

]Dim testTemp As String = " " //這是用來暫存從該行讀取到的資訊,為了避免迴圈一開始就跳出,所以給他一個非空初始值

]Do Until testTemp = Nothing

]testTemp = testReader.ReadLine()

]If (testTemp <> Nothing) Then

]testString &= vbCrLf //雖然System.IO.StreamReader 是一行一行讀取,但是他會忽略換行字元,所以寫手視情況要自己補上去

]End If

]testString &= testTemp

]Loop

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 GPhettoH 的頭像
    GPhettoH

    歇息,等待明日的天空

    GPhettoH 發表在 痞客邦 留言(0) 人氣()