如何:在 Visual Basic 中從文字檔讀取
ReadAllText 物件的 My.Computer.FileSystem
方法允許您從文字檔讀取。 如果檔案的內容是使用 ASCII 或 UTF-8 之類的編碼方式,則可以指定檔案編碼方式。
如果您是從含擴充字元的檔案讀取,您將需要指定檔案的編碼方式。
注意
若要一次讀取檔案中的一行文字,請使用 OpenTextFileReader 物件的 My.Computer.FileSystem
方法。 OpenTextFileReader
方法會傳回 StreamReader 物件。 您可以使用 ReadLine 物件的 StreamReader
方法,以一次讀取檔案中的一行。 您可以使用 EndOfStream 物件的 StreamReader
方法測試檔案的結尾。
若要從文字檔讀取
使用 ReadAllText
物件的 My.Computer.FileSystem
方法並提供路徑,將文字檔的內容讀取到字串中。 下列範例會將 test.txt 的內容讀取到字串中,然後顯示於訊息方塊中。
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt")
MsgBox(fileReader)
若要從已編碼的文字檔讀取
使用 ReadAllText
物件的 My.Computer.FileSystem
方法,並且提供路徑和檔案編碼類型,將文字檔的內容讀取到字串中。 下列範例會將 UTF32 檔案 test.txt 的內容讀取到字串中,然後顯示於訊息方塊中。
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt",
System.Text.Encoding.UTF32)
MsgBox(fileReader)
穩固程式設計
以下條件可能會造成例外狀況:
因下列其中一項原因而導致路徑無效:它是長度為零的字串、它只包含空白字元、它包含無效的字元,或者它是裝置路徑 (ArgumentException)。
路徑無效,因為它是
Nothing
(ArgumentNullException)。檔案不存在 (FileNotFoundException)。
檔案正由另一個程序使用中,或發生 I/O 錯誤 (IOException)。
路徑超過系統定義的最大長度 (PathTooLongException)。
路徑中的檔案或目錄名稱含有冒號 (:),或者是無效的格式 (NotSupportedException)。
沒有足夠的記憶體可將字串寫入緩衝區 (OutOfMemoryException)。
使用者缺乏必要的使用權限來檢視路徑 (SecurityException)。
請勿根據檔案名稱來判斷檔案內容。 例如,檔案 Form1.vb 可能不是 Visual Basic 來源檔案。
在應用程式中使用這些資料之前,請先驗證所有輸入值。 檔案內容可能與預期不同,並從檔案讀取資料的方法會失敗。