My.Computer.FileSystem.WriteAllText 方法
更新:2007 年 11 月
將文字寫入檔案。
' Usage
My.Computer.FileSystem.WriteAllText(file ,text ,append)
My.Computer.FileSystem.WriteAllText(file ,text ,append ,encoding)
' Declaration
Public Sub WriteAllText( _
ByVal file As String, _
ByVal text As String, _
ByVal append As Boolean _
)
' -or-
Public Sub WriteAllText( _
ByVal file As String, _
ByVal text As String, _
ByVal append As Boolean, _
ByVal encoding As System.Text.Encoding _
)
參數
file
String。要寫入的檔案。必要項。text
String。要寫入檔案的文字。必要項。append
Boolean。是否要附加文字或覆寫現有文字。預設值為 False。必要項。encoding
Encoding. 寫入檔案時要使用的編碼方式。必要項。預設為 UTF-8。
例外狀況
下列情形可能會造成例外狀況 (Exception):
因下列其中一項原因而導致路徑無效:它是長度為零的字串、它只包含空白字元、它包含無效的字元、以斜線結束,或者它是裝置路徑 (開頭為 \\.\) (ArgumentException)。
路徑無效,因為它是 Nothing (ArgumentNullException)。
file 指向不存在的路徑 (FileNotFoundException 或 DirectoryNotFoundException)。
檔案正由另一個程序使用中,或發生 I/O 錯誤 (IOException)。
路徑超過系統定義的最大長度 (PathTooLongException)。
路徑中的檔案或目錄名稱含有冒號 (:),或者是無效的格式 (NotSupportedException)。
使用者缺乏必要的使用權限來檢視路徑 (SecurityException)。
如果您在部分信任的內容中執行,則會因使用權限不足而導致程式碼擲回例外狀況。如需詳細資訊,請參閱程式碼存取安全性的基本概念。
備註
沒有指定編碼方式時,會使用 UTF-8。編碼的位元組順序標記 (BOM) 會寫入檔案,除非您指定 Encoding.Default,才會使用系統目前的 ANSI 字碼頁 (Code Page)。如果指定的編碼方式與檔案現有的編碼方式不符,則會忽略指定的編碼方式。
如果指定的路徑 (不含檔案名稱) 無效,則會擲回 DirectoryNotFoundException 例外狀況。如果路徑有效,但檔案不存在,則會建立檔案。
如果 append 參數為 True,方法會將文字附加至檔案,否則會覆寫檔案中的現有文字。
注意事項: |
---|
WriteAllText 方法會開啟檔案並寫入檔案,然後關閉檔案。使用 WriteAllText 方法的程式碼比使用 StreamWriter 物件的程式碼更簡單。不過,若要使用迴圈將字串加入至檔案,StreamWriter 物件可提供更好的效能,因為只需開啟及關閉檔案一次。如需詳細資訊,請參閱My.Computer.FileSystem.OpenTextFileWriter 方法。 |
工作
下表列出包含 My.Computer.FileSystem.WriteAllText 方法的工作範例。
若要 |
請參閱 |
---|---|
將文字寫入檔案 |
|
將文字附加到檔案 |
範例
這個範例會將 "This is new text to be added." 這一行寫入檔案 Test.txt,覆寫檔案中任何的現有文字。
My.Computer.FileSystem.WriteAllText("C:\TestFolder1\test.txt", _
"This is new text to be added.", False)
這個範例會將 Documents and Settings資料夾中的檔案名稱寫入 FileList.txt,若要取得更好的可讀性,可在每個名稱中插入歸位字元 (Carriage Return)。
For Each foundFile As String In _
My.Computer.FileSystem.GetFiles("C:\Documents and Settings")
foundFile = foundFile & vbCrLf
My.Computer.FileSystem.WriteAllText _
("C:\Documents and Settings\FileList.txt", foundFile, True)
Next
需求
命名空間 (Namespace)︰Microsoft.VisualBasic.MyServices
類別 (Class):FileSystemProxy (提供對 FileSystem 的存取)
組件:Visual Basic 執行階段程式庫 (在 Microsoft.VisualBasic.dll 中)
依專案類型的可用性
專案類型 |
是否可用 |
---|---|
Windows 應用程式 |
是 |
類別庫 |
是 |
主控台應用程式 |
是 |
Windows 控制項程式庫 |
是 |
Web 控制項程式庫 |
是 |
Windows 服務 |
是 |
網站 |
是 |
使用權限
下列使用權限可能為必要:
使用權限 |
描述 |
---|---|
控制存取檔案和資料夾的功能。關聯的列舉型別 (Enumeration):Unrestricted。 |
請參閱
參考
My.Computer.FileSystem.OpenTextFileWriter 方法