共用方式為


.NET Framework 檔案 I/O 和文件系統的基本概念 (Visual Basic)

命名空間中的 System.IO 類別可用來處理磁碟驅動器、檔案和目錄。

System.IO 命名空間包含 FileDirectory 類別,這些類別提供 .NET Framework 用來操作檔案和目錄的功能。 由於這些物件的方法是靜態或共享成員,因此您可以直接使用這些物件,而不需要先建立 類別的實例。 與這些類別相關聯的 是 FileInfoDirectoryInfo 類別,此功能的使用者 My 會熟悉此功能。 若要使用這些類別,您必須在受影響的程式代碼開頭加入 Imports 語句,以完整限定名稱或匯入適當的命名空間。 如需詳細資訊,請參閱 Imports 語句(.NET 命名空間和類型)。

備註

本節中的其他主題使用 My.Computer.FileSystem 物件 而非 System.IO 類別 來處理磁碟驅動器、檔案和目錄。 物件 My.Computer.FileSystem 主要用於 Visual Basic 程式。 System.IO 類別適用於支援 .NET Framework 的任何語言,包括Visual Basic。

數據流的定義

.NET Framework 使用數據流來支持讀取和寫入檔案。 您可以將數據流視為一維的連續數據集,其中包含開頭和結尾,以及數據指標指出數據流中目前的位置。

游標會顯示檔案流中的目前位置。

串流作業

數據流中包含的數據可能來自記憶體、檔案或 TCP/IP 套接字。 資料流有基本操作可套用於其中:

  • 閱讀。 您可以從數據流讀取數據,將數據從數據流傳輸到數據結構,例如字串或位元組陣列。

  • 寫作。 您可以寫入資料流,將數據從數據源傳輸到數據流。

  • 搜尋。 您可以在資料流中查詢和修改您的位置。

如需詳細資訊,請參閱 撰寫數據流

數據流類型

在 .NET Framework 中,數據流會以 Stream 類別表示,該類別會形成所有其他數據流的抽象類。 您無法直接建立 類別的 Stream 實例,但必須使用它所實作的其中一個類別。

有許多類型的數據流,但為了處理檔案輸入/輸出 (I/O),最重要的類型是 FileStream 類別,提供讀取和寫入檔案的方法,而 IsolatedStorageFileStream 類別則提供在隔離儲存區中建立檔案和目錄的方法。 使用檔案 I/O 時可以使用的其他資料流包括:

下表列出通常透過資料流完成的工作:

發往 看!
讀取和寫入資料檔 如何:讀取和寫入新建立的數據檔
從檔案讀取文字 如何:從檔案讀取文字
將文字寫入檔案 如何:將文字寫入檔案
從字串讀取字元 如何:從字串讀取字元
將字元寫入字串 如何:將字元寫入字串
加密資料 加密數據
解密數據 解密數據

檔案存取和屬性

您可以控制如何建立、開啟和共用檔案,這是透過 FileAccessFileModeFileShare 列舉來實現的,這些列舉包含 FileStream 類別的構造函式所使用的旗標。 例如,當您開啟或建立新的 FileStream 時,FileMode 列舉可讓您指定檔案是進行附加,還是在指定的檔案不存在時建立新檔案,或者是覆寫檔案,等等。

枚舉 FileAttributes 可用於收集特定於檔案的資訊。 FileAttributes列舉會傳回檔案的預存屬性,例如是否經過壓縮、加密、隱藏、唯讀、封存、目錄、系統檔案或暫存盤。

下表列出涉及檔案存取和檔案屬性的工作:

發往 看!
開啟並將文字附加至記錄檔 如何:開啟並附加至記錄檔
判斷檔案的屬性 FileAttributes

檔案許可權

您可以使用FileIOPermission類別來控制對檔案和目錄的存取。 對於使用 Web Forms 的開發人員來說,這可能特別重要,因為預設情況下,ASP.NET 和 .NET Framework 會安裝並建立一個名為 ASPNET 的特殊本機用戶帳戶,而 Web Forms 就是在此帳戶環境中執行的。 當這類應用程式要求存取資源時,ASPNET 使用者帳戶的許可權有限,這可能會防止使用者執行動作,例如從 Web 應用程式寫入檔案。 如需詳細資訊,請參閱FileIOPermission

隔離的檔案記憶體

隔離儲存是針對在使用者或程式碼可能缺少必要許可權的情況下運作的檔案所產生的問題的一種解決方案。 獨立儲存會將每個使用者指派一個數據隔間,以保存一個或多個存放區。 存儲可以依使用者和組件彼此隔離。 只有建立存放區的使用者和程式組件可以存取它。 存放區充當完整的虛擬文件系統,您可以在一個存放區內建立並操作目錄及檔案。

下表列出通常與隔離檔案記憶體相關聯的工作。

發往 看!
建立隔離存放區 如何:取得隔離儲存區的存儲區域
列舉隔離存放區 如何:列舉隔離儲存區的存放區
刪除獨立商店 如何:刪除隔離儲存區中的存放區
在隔離儲存區中建立檔案或目錄 操作說明:在隔離儲存區中建立檔案和目錄
在隔離儲存區中尋找檔案 如何:尋找隔離儲存區中的現有檔案和目錄
讀取或寫入隔離記憶體中的檔案 如何:讀取和寫入隔離儲存區中的檔案
刪除隔離記憶體中的檔案或目錄 操作說明:刪除隔離儲存區中的檔案和目錄

檔案事件

元件 FileSystemWatcher 可讓您監看系統上的檔案和目錄變更,或在您具有網路存取權的任何計算機上。 例如,如果修改了檔案,您可能會想要傳送用戶變更已發生的警示。 發生變更時,會引發一或多個事件、儲存在緩衝區中,並交給 FileSystemWatcher 元件進行處理。

另請參閱