1. 讀寫文件的步驟:
創建一個文件流 -- 創建相應的讀寫器 -- 執行讀寫操作 -- 關閉讀寫器 -- 關閉文件流
創建一個文件流: FileStream objfs = new FileStream(文件的路徑 , 文件打開模式);
文件的打開模式: FileMode 是一個枚舉值,此處略去
創建文件的同事也可以設置權限
創建讀寫器: StreamReader objsr = new StreamReader(objfs, Encoding.UTF8);
StreamWriter objsw = new StreamWriter(objfs, Encoding.UTF8);
Enoding 是為了解決亂碼問題
讀寫操作: 讀: objsr.ReadToEnd();
寫:objsw.Write(content);
關閉讀寫器: objsr.Close();
objsw.Close();
關閉文件流: objfs.Close();
2. File類
提供操作文件的各種方法。
方法 | 說明 |
bool Exists(string path) | 用于檢查指定文件是否存在,該方法返回一個布爾值 |
void Copy(string sourceFileName, string destFileName) | 將指定路徑的源文件中的內容復制到目標文件中,如果目標文件不存在,則在指定路徑中新建一個文件 |
void Move (string sourceFileName, string destFileName) | 將指定文件移動到一個新的路徑 |
void Delete(string path) | 刪除指定的文件,如果指定的文件不存在,則不引發異常 |
3. Directory類提供對文件夾的移動、刪除等操作
方法 | 說明 |
bool Exists(string path) | 用于檢查指定文件夾在磁盤上是否存在 |
void Move(string sourceDirName, string destDirName) | 用于將文件或目錄及其內容移到新位置 |
void Delete(string path, bool recursive) | 刪除指定目錄,如果bool指定true,則刪除子目錄中的所有目錄內容 |
void Delete(string path) | 從指定路徑刪除空目錄 |
3. FileInfo類
由于File類的靜態方法在使用時都會進行安全檢查,所以如果想要多次使用某個文件對象,可以考慮使用FileInfo類相應的實例方法,因為并不總是需要安全檢查
屬性/方法 | 說明 |
Exists | 用于檢查指定文件是否存在,返回一個布爾值 |
Extension | 獲取表示文件擴展名部分的字符串 |
Name | 獲取文件名 |
FullName | 獲取目錄或文件的完整目錄 |
FileInfo CopyTo(string) | 將現有文件復制到新文件,不允許覆蓋現有文件 |
void Delete() | 永久刪除文件 |
void MoveTo(string) | 將指定文件移到新位置 |
4. DirectoryInfo類
如果打算多次重用某個目錄對象,可以考慮使用DirectoryInfo類的實例方法
方法 | 說明 |
DirectoryInfo[ ] GetDirectories() | 返回當前目錄的子目錄對象數組 |
FileInfo[ ] GetFiles() | 返回當前目錄下文件列表(FileInfo對象數組) |
備注:文件(file)與流(stream)
文件,是在各種媒介上永久存儲的數據的有序集合,它是一種進行數據讀寫操作的基本對象。
流,從概念上講,非常類似于單獨的磁盤文件,它也是進行數據讀取操作的基本對象,流為我們提供了連續的字節流存儲空間。
File類,是一個靜態類,主要是來提供一些函數庫用的。
靜態實用類,提供了很多靜態的方法,支持對文件的基本操作,包括創建,拷貝,移動,刪除和打開一個文件。
新聞熱點
疑難解答