文字檔的讀取
引入: 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
留言列表