1、寫入
//在應用程序當前目錄下的File1.txt文件中追加文件內容,若是文件不存在就建立,默認編碼 File.AppendAllText("File1.txt", "這是文件內容A"); //在C盤根目錄下的File2.txt文件中追加文件內容,若是文件不存在就建立,指定編碼爲UTF8 File.AppendAllText(@"c:\File2.txt", "這是文件內容B",Encoding.UTF8); //讀取應用程序當前目錄下的File1.txt文件內容 String content = File.ReadAllText(@"File1.txt"); MessageBox.Show(content); //將C盤根目錄下的File2.txt文件加密 File.Encrypt(@"c:\File2.txt");
須要引入System.IOhtml
一、建立一個新文件,在其中寫入指定的字節數組,而後關閉該文件。若是目標文件已存在,則覆蓋該文件。java
//path:要寫入的文件。bytes:要寫入文件的字節。 public static void WriteAllBytes(string path, byte[] bytes);
二、建立一個新文件,在其中寫入指定的字符串數組,而後關閉該文件。若是目標文件已存在,則覆蓋該文件。
path:要寫入的文件。contents:要寫入文件的字符串數組。
public static void WriteAllLines(string path, string[] contents);
三、建立一個新文件,使用指定的編碼在其中寫入指定的字符串數組,而後關閉文件。若是目標文件已存在,則覆蓋該文件。
path:要寫入的文件。contents:要寫入文件的字符串數組。
encoding:一個 System.Text.Encoding 對象,表示應用於字符串數組的字符編碼。
public static void WriteAllLines(string path, string[] contents, Encoding encoding);
四、建立一個新文件,在其中寫入指定的字符串,而後關閉文件。若是目標文件已存在,則覆蓋該文件。
path:要寫入的文件。contents:要寫入文件的字符串。
public static void WriteAllText(string path, string contents);數組
一、建立一個新文件,在其中寫入指定的字符串,而後關閉文件。若是目標文件已存在,則覆蓋該文件。
path:要寫入的文件。contents:要寫入文件的字符串。
encoding:一個 System.Text.Encoding 對象,表示應用於字符串的編碼。
public static void WriteAllText(string path, string contents, Encoding encoding);安全
2、讀取
一、打開一個文本文件,讀取文件的全部行,而後關閉該文件。 path:要打開以進行讀取的文件位置。 返回結果: 包含文件全部行的字符串。
public static string ReadAllText(string path); post
二、打開一個文件,將文件的內容讀入一個字符串,而後關閉該文件。path:要打開以進行讀取的文件位置。返回結果: 包含文件內容的字節數組。
public static byte[] ReadAllBytes(string path); this
三、打開一個文本文件,讀取文件的全部行,而後關閉該文件。path:要打開以進行讀取的文件位置。返回結果: 包含文件全部行的字符串數組。
public static string[] ReadAllLines(string path);
編碼
四、打開一個文件,使用指定的編碼讀取文件的全部行,而後關閉該文件。path:要打開以進行讀取的文件位置。encoding:應用到文件內容的編碼。 返回結果: 包含文件全部行的字符串數組。
public static string[] ReadAllLines(string path, Encoding encoding);加密
五、打開一個文件,使用指定的編碼讀取文件的全部行,而後關閉該文件。 path:要打開以進行讀取的文件位置。 encoding:應用到文件內容的編碼。 返回結果: 包含文件全部行的字符串。
public static string ReadAllText(string path, Encoding encoding);spa
3、文件操做
一、將某個文件加密,使得只有加密該文件的賬戶才能將其解密。 path: 描述要加密的文件的路徑。
public static void Encrypt(string path);
二、刪除指定的文件。若是指定的文件不存在,則不引起異常。 path:要刪除的文件的名稱。
public static void Delete(string path);
三、解密由當前賬戶使用 System.IO.File.Encrypt(System.String) 方法加密的文件。path:描述要解密的文件的路徑。
public static void Decrypt(string path);
四、肯定指定的文件是否存在。
public static bool Exists(string path);
五、將現有文件複製到新文件。不容許覆蓋同名的文件。sourceFileName:要複製的文件。destFileName:目標文件的名稱。它不能是一個目錄或現有文件。
public static void Copy(string sourceFileName, string destFileName);
4、文件操做詳細
using System; using System.Runtime.InteropServices; using System.Security.AccessControl; using System.Text; namespace System.IO { // 摘要: // 提供用於建立、複製、刪除、移動和打開文件的靜態方法,並協助建立 System.IO.FileStream 對象。 [ComVisible(true)] public static class File { // 摘要: // 打開一個文件,向其中追加指定的字符串,而後關閉該文件。若是文件不存在,此方法建立一個文件,將指定的字符串寫入文件,而後關閉該文件。 // // 參數: // path: // 要將指定的字符串追加到的文件。 // // contents: // 要追加到文件中的字符串。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static void AppendAllText(string path, string contents); // // 摘要: // 將指定的字符串追加到文件中,若是文件還不存在則建立該文件。 // // 參數: // path: // 要將指定的字符串追加到的文件。 // // contents: // 要追加到文件中的字符串。 // // encoding: // 要使用的字符編碼。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static void AppendAllText(string path, string contents, Encoding encoding); // // 摘要: // 建立一個 System.IO.StreamWriter,它將 UTF-8 編碼文本追加到現有文件。 // // 參數: // path: // 要向其中追加內容的文件的路徑。 // // 返回結果: // 一個 StreamWriter,它將 UTF-8 編碼文本追加到現有文件。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.NotSupportedException: // path 的格式無效。 public static StreamWriter AppendText(string path); // // 摘要: // 將現有文件複製到新文件。不容許覆蓋同名的文件。 // // 參數: // sourceFileName: // 要複製的文件。 // // destFileName: // 目標文件的名稱。它不能是一個目錄或現有文件。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // sourceFileName 或 destFileName 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars // 定義的無效字符。- 或 -sourceFileName 或 destFileName 指定目錄。 // // System.ArgumentNullException: // sourceFileName 或 destFileName 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 在 sourceFileName 或 destFileName 中指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.FileNotFoundException: // 未找到 sourceFileName。 // // System.IO.IOException: // destFileName 存在。- 或 -出現 I/O 錯誤。 // // System.NotSupportedException: // sourceFileName 或 destFileName 的格式無效。 public static void Copy(string sourceFileName, string destFileName); // // 摘要: // 將現有文件複製到新文件。容許覆蓋同名的文件。 // // 參數: // sourceFileName: // 要複製的文件。 // // destFileName: // 目標文件的名稱。不能是目錄。 // // overwrite: // 若是能夠覆蓋目標文件,則爲 true;不然爲 false。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // sourceFileName 或 destFileName 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars // 定義的無效字符。- 或 -sourceFileName 或 destFileName 指定目錄。 // // System.ArgumentNullException: // sourceFileName 或 destFileName 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 在 sourceFileName 或 destFileName 中指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.FileNotFoundException: // 未找到 sourceFileName。 // // System.IO.IOException: // destFileName 是隻讀的,或者 destFileName 存在而且 overwrite 是 false。- 或 -出現 I/O 錯誤。 // // System.NotSupportedException: // sourceFileName 或 destFileName 的格式無效。 public static void Copy(string sourceFileName, string destFileName, bool overwrite); // // 摘要: // 在指定路徑中建立或覆蓋文件。 // // 參數: // path: // 要建立的文件的路徑及名稱。 // // 返回結果: // 一個 System.IO.FileStream,它提供對 path 中指定的文件的讀/寫訪問。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 建立文件時發生 I/O 錯誤。 // // System.NotSupportedException: // path 的格式無效。 public static FileStream Create(string path); // // 摘要: // 建立或覆蓋指定的文件。 // // 參數: // path: // 文件名。 // // bufferSize: // 用於讀取和寫入文件的已放入緩衝區的字節數。 // // 返回結果: // 一個具備指定緩衝大小的 System.IO.FileStream,它提供對 path 中指定的文件的讀/寫訪問。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 建立文件時發生 I/O 錯誤。 // // System.NotSupportedException: // path 的格式無效。 public static FileStream Create(string path, int bufferSize); // // 摘要: // 建立或覆蓋指定的文件,並指定緩衝區大小和一個描述如何建立或覆蓋該文件的 System.IO.FileOptions 值。 // // 參數: // path: // 文件名。 // // bufferSize: // 用於讀取和寫入文件的已放入緩衝區的字節數。 // // options: // System.IO.FileOptions 值之一,它描述如何建立或覆蓋該文件。 // // 返回結果: // 具備指定緩衝區大小的新文件。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。- 或 - 爲 options 指定了 System.IO.FileOptions.Encrypted,但當前平臺不支持文件加密。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 建立文件時發生 I/O 錯誤。 // // System.NotSupportedException: // path 的格式無效。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。 public static FileStream Create(string path, int bufferSize, FileOptions options); // // 摘要: // 建立或覆蓋具備指定的緩衝區大小、文件選項和文件安全性的指定文件。 // // 參數: // path: // 文件名。 // // bufferSize: // 用於讀取和寫入文件的已放入緩衝區的字節數。 // // options: // System.IO.FileOptions 值之一,它描述如何建立或覆蓋該文件。 // // fileSecurity: // System.Security.AccessControl.FileSecurity 值之一,它肯定文件的訪問控制和審覈安全性。 // // 返回結果: // 具備指定的緩衝區大小、文件選項和文件安全性的新文件。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。- 或 - 爲 options 指定了 System.IO.FileOptions.Encrypted,但當前平臺不支持文件加密。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 建立文件時發生 I/O 錯誤。 // // System.NotSupportedException: // path 的格式無效。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了一個只讀文件。 public static FileStream Create(string path, int bufferSize, FileOptions options, FileSecurity fileSecurity); // // 摘要: // 建立或打開一個文件用於寫入 UTF-8 編碼的文本。 // // 參數: // path: // 要打開以進行寫入的文件。 // // 返回結果: // 一個 System.IO.StreamWriter,它使用 UTF-8 編碼寫入指定的文件。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.NotSupportedException: // path 的格式無效。 public static StreamWriter CreateText(string path); // // 摘要: // 解密由當前賬戶使用 System.IO.File.Encrypt(System.String) 方法加密的文件。 // // 參數: // path: // 描述要解密的文件的路徑。 // // 異常: // System.ArgumentException: // path 參數是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 參數爲 null。 // // System.IO.DriveNotFoundException: // 指定了無效的驅動器。 // // System.IO.FileNotFoundException: // 找不到 path 參數所描述的文件。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。例如,加密的文件已經打開。- 或 -在當前平臺上不支持此操做。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.PlatformNotSupportedException: // 當前操做系統不是 Microsoft Windows NT 或更高版本。 // // System.NotSupportedException: // 文件系統不是 NTFS。 // // System.UnauthorizedAccessException: // path 參數指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 參數指定了一個目錄。- 或 -調用方沒有所要求的權限。 public static void Decrypt(string path); // // 摘要: // 刪除指定的文件。若是指定的文件不存在,則不引起異常。 // // 參數: // path: // 要刪除的文件的名稱。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 指定的文件正在使用中。 // // System.NotSupportedException: // path 的格式無效。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 是一個目錄。- 或 -path 指定一個只讀文件。 public static void Delete(string path); // // 摘要: // 將某個文件加密,使得只有加密該文件的賬戶才能將其解密。 // // 參數: // path: // 描述要加密的文件的路徑。 // // 異常: // System.ArgumentException: // path 參數是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 參數爲 null。 // // System.IO.DriveNotFoundException: // 指定了無效的驅動器。 // // System.IO.FileNotFoundException: // 找不到 path 參數所描述的文件。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。- 或 -在當前平臺上不支持此操做。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.PlatformNotSupportedException: // 當前操做系統不是 Microsoft Windows NT 或更高版本。 // // System.NotSupportedException: // 文件系統不是 NTFS。 // // System.UnauthorizedAccessException: // path 參數指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 參數指定了一個目錄。- 或 -調用方沒有所要求的權限。 public static void Encrypt(string path); // // 摘要: // 肯定指定的文件是否存在。 // // 參數: // path: // 要檢查的文件。 // // 返回結果: // 若是調用方具備要求的權限而且 path 包含現有文件的名稱,則爲 true;不然爲 false。若是 path 爲 null、無效路徑或零長度字符串,則此方法也將返回 // false。若是調用方不具備讀取指定文件所需的足夠權限,則不引起異常而且該方法返回 false,這與 path 是否存在無關。 public static bool Exists(string path); // // 摘要: // 獲取一個 System.Security.AccessControl.FileSecurity 對象,它封裝指定文件的訪問控制列表 (ACL) 條目。 // // 參數: // path: // 一個文件的路徑,該文件包含描述文件的訪問控制列表 (ACL) 信息的 System.Security.AccessControl.FileSecurity // 對象。 // // 返回結果: // 一個 System.Security.AccessControl.FileSecurity 對象,它封裝由 path 參數描述的文件的訪問控制規則。 // // 異常: // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.Runtime.InteropServices.SEHException: // path 參數爲 null。 // // System.SystemException: // 未能找到文件。 // // System.UnauthorizedAccessException: // path 參數指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 參數指定了一個目錄。- 或 -調用方沒有所要求的權限。 public static FileSecurity GetAccessControl(string path); // // 摘要: // 獲取一個 System.Security.AccessControl.FileSecurity 對象,它封裝特定文件的指定類型的訪問控制列表 (ACL) // 項。 // // 參數: // path: // 一個文件的路徑,該文件包含描述文件的訪問控制列表 (ACL) 信息的 System.Security.AccessControl.FileSecurity // 對象。 // // includeSections: // System.Security.AccessControl.AccessControlSections 值之一,它指定要接收的訪問控制列表 (ACL) // 信息的類型。 // // 返回結果: // 一個 System.Security.AccessControl.FileSecurity 對象,它封裝由 path 參數描述的文件的訪問控制規則。 // // 異常: // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.Runtime.InteropServices.SEHException: // path 參數爲 null。 // // System.SystemException: // 未能找到文件。 // // System.UnauthorizedAccessException: // path 參數指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 參數指定了一個目錄。- 或 -調用方沒有所要求的權限。 public static FileSecurity GetAccessControl(string path, AccessControlSections includeSections); // // 摘要: // 獲取在此路徑上的文件的 System.IO.FileAttributes。 // // 參數: // path: // 該文件的路徑。 // // 返回結果: // 路徑上文件的 System.IO.FileAttributes。 // // 異常: // System.ArgumentException: // path 爲空,僅包含空白,或包含無效字符。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 // // System.IO.FileNotFoundException: // path 表示一個文件且它是無效的,例如,位於未映射的驅動器上或沒法找到文件。 // // System.IO.DirectoryNotFoundException: // path 表示一個目錄且它是無效的,例如,位於未映射的驅動器上或沒法找到目錄。 public static FileAttributes GetAttributes(string path); // // 摘要: // 返回指定文件或目錄的建立日期和時間。 // // 參數: // path: // 要獲取其建立日期和時間信息的文件或目錄。 // // 返回結果: // 一個 System.DateTime 結構,它被設置爲指定文件或目錄的建立日期和時間。該值用本地時間表示。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 public static DateTime GetCreationTime(string path); // // 摘要: // 返回指定的文件或目錄的建立日期及時間,其格式爲協調通用時間 (UTC)。 // // 參數: // path: // 要獲取其建立日期和時間信息的文件或目錄。 // // 返回結果: // 一個 System.DateTime 結構,它被設置爲指定文件或目錄的建立日期和時間。該值用 UTC 時間表示。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 public static DateTime GetCreationTimeUtc(string path); // // 摘要: // 返回上次訪問指定文件或目錄的日期和時間。 // // 參數: // path: // 要獲取其訪問日期和時間信息的文件或目錄。 // // 返回結果: // 一個 System.DateTime 結構,它被設置爲上次訪問指定文件或目錄的日期和時間。該值用本地時間表示。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 public static DateTime GetLastAccessTime(string path); // // 摘要: // 返回上次訪問指定的文件或目錄的日期及時間,其格式爲協調通用時間 (UTC)。 // // 參數: // path: // 要獲取其訪問日期和時間信息的文件或目錄。 // // 返回結果: // 一個 System.DateTime 結構,它被設置爲上次訪問指定文件或目錄的日期和時間。該值用 UTC 時間表示。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 public static DateTime GetLastAccessTimeUtc(string path); // // 摘要: // 返回上次寫入指定文件或目錄的日期和時間。 // // 參數: // path: // 要獲取其寫入日期和時間信息的文件或目錄。 // // 返回結果: // 一個 System.DateTime 結構,它被設置爲上次寫入指定文件或目錄的日期和時間。該值用本地時間表示。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 public static DateTime GetLastWriteTime(string path); // // 摘要: // 返回上次寫入指定的文件或目錄的日期和時間,其格式爲協調通用時間 (UTC)。 // // 參數: // path: // 要獲取其寫入日期和時間信息的文件或目錄。 // // 返回結果: // 一個 System.DateTime 結構,它被設置爲上次寫入指定文件或目錄的日期和時間。該值用 UTC 時間表示。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 public static DateTime GetLastWriteTimeUtc(string path); // // 摘要: // 將指定文件移到新位置,並提供指定新文件名的選項。 // // 參數: // sourceFileName: // 要移動的文件的名稱。 // // destFileName: // 文件的新路徑。 // // 異常: // System.IO.IOException: // 目標文件已經存在。 // // System.ArgumentNullException: // sourceFileName 或 destFileName 爲 null。 // // System.ArgumentException: // sourceFileName 或 destFileName 是零長度字符串、只包含空白或者包含在 System.IO.Path.InvalidPathChars // 中定義的無效字符。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 sourceFileName。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // sourceFileName 或 destFileName 中指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.NotSupportedException: // sourceFileName 或 destFileName 的格式無效。 public static void Move(string sourceFileName, string destFileName); // // 摘要: // 打開指定路徑上的 System.IO.FileStream,具備讀/寫訪問權限。 // // 參數: // path: // 要打開的文件。 // // mode: // System.IO.FileMode 值,用於指定在文件不存在時是否建立該文件,並肯定是保留仍是覆蓋現有文件的內容。 // // 返回結果: // 以指定模式打開的指定路徑上的 System.IO.FileStream,具備讀/寫訪問權限而且不共享。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.ArgumentOutOfRangeException: // mode 指定了一個無效值。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 public static FileStream Open(string path, FileMode mode); // // 摘要: // 以指定的模式和訪問權限打開指定路徑上的 System.IO.FileStream。 // // 參數: // path: // 要打開的文件。 // // mode: // System.IO.FileMode 值,用於指定在文件不存在時是否建立該文件,並肯定是保留仍是覆蓋現有文件的內容。 // // access: // System.IO.FileAccess 值,指定能夠對文件執行的操做。 // // 返回結果: // 一個非共享的 System.IO.FileStream,它提供對指定文件的訪問,而且具備指定的模式和訪問權限。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。- // 或 -access 指定了 Read,而 mode 指定了 Create、CreateNew、Truncate 或 Append。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件,而 access 不爲 Read。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.ArgumentOutOfRangeException: // mode 或 access 指定了一個無效值。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 public static FileStream Open(string path, FileMode mode, FileAccess access); // // 摘要: // 打開指定路徑上的 System.IO.FileStream,具備指定的讀、寫或讀/寫訪問模式以及指定的共享選項。 // // 參數: // path: // 要打開的文件。 // // mode: // System.IO.FileMode 值,用於指定在文件不存在時是否建立該文件,並肯定是保留仍是覆蓋現有文件的內容。 // // access: // System.IO.FileAccess 值,指定能夠對文件執行的操做。 // // share: // System.IO.FileShare 值,它指定其餘線程所具備的對該文件的訪問類型。 // // 返回結果: // 指定路徑上的 System.IO.FileStream,具備指定的讀、寫或讀/寫訪問模式以及指定的共享選項。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。- // 或 -access 指定了 Read,而 mode 指定了 Create、CreateNew、Truncate 或 Append。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件,而 access 不爲 Read。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.ArgumentOutOfRangeException: // mode、access 或 share 指定了一個無效值。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 public static FileStream Open(string path, FileMode mode, FileAccess access, FileShare share); // // 摘要: // 打開現有文件以進行讀取。 // // 參數: // path: // 要打開以進行讀取的文件。 // // 返回結果: // 指定路徑上的只讀 System.IO.FileStream。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.UnauthorizedAccessException: // path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 public static FileStream OpenRead(string path); // // 摘要: // 打開現有 UTF-8 編碼文本文件以進行讀取。 // // 參數: // path: // 要打開以進行讀取的文件。 // // 返回結果: // 指定路徑上的 System.IO.StreamReader。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 public static StreamReader OpenText(string path); // // 摘要: // 打開現有文件以進行寫入。 // // 參數: // path: // 要打開以進行寫入的文件。 // // 返回結果: // 具備 System.IO.FileAccess.Write 訪問權限的指定路徑上的非共享 System.IO.FileStream 對象。 // // 異常: // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。- 或 -path 指定了只讀文件或目錄。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 public static FileStream OpenWrite(string path); // // 摘要: // 打開一個文件,將文件的內容讀入一個字符串,而後關閉該文件。 // // 參數: // path: // 要打開以進行讀取的文件。 // // 返回結果: // 包含文件內容的字節數組。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // 在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static byte[] ReadAllBytes(string path); // // 摘要: // 打開一個文本文件,讀取文件的全部行,而後關閉該文件。 // // 參數: // path: // 要打開以進行讀取的文件。 // // 返回結果: // 包含文件全部行的字符串數組。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static string[] ReadAllLines(string path); // // 摘要: // 打開一個文件,使用指定的編碼讀取文件的全部行,而後關閉該文件。 // // 參數: // path: // 要打開以進行讀取的文件。 // // encoding: // 應用到文件內容的編碼。 // // 返回結果: // 包含文件全部行的字符串數組。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static string[] ReadAllLines(string path, Encoding encoding); // // 摘要: // 打開一個文本文件,讀取文件的全部行,而後關閉該文件。 // // 參數: // path: // 要打開以進行讀取的文件。 // // 返回結果: // 包含文件全部行的字符串。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static string ReadAllText(string path); // // 摘要: // 打開一個文件,使用指定的編碼讀取文件的全部行,而後關閉該文件。 // // 參數: // path: // 要打開以進行讀取的文件。 // // encoding: // 應用到文件內容的編碼。 // // 返回結果: // 包含文件全部行的字符串。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static string ReadAllText(string path, Encoding encoding); // // 摘要: // 使用其餘文件的內容替換指定文件的內容,這一過程將刪除原始文件,並建立被替換文件的備份。 // // 參數: // sourceFileName: // 替換由 destinationFileName 指定的文件的文件名。 // // destinationFileName: // 替換文件的名稱。 // // destinationBackupFileName: // 備份文件的名稱。 // // 異常: // System.ArgumentException: // destinationFileName 參數描述的路徑不是合法的格式。- 或 -destinationBackupFileName 參數描述的路徑不是合法的格式。 // // System.ArgumentNullException: // destinationFileName 參數爲 null。 // // System.IO.DriveNotFoundException: // 指定了無效的驅動器。 // // System.IO.FileNotFoundException: // 找不到當前 System.IO.FileInfo 對象所描述的文件。- 或 -找不到 destinationBackupFileName 參數所描述的文件。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。- 或 -sourceFileName 和 destinationFileName 參數指定了相同的文件。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.PlatformNotSupportedException: // 操做系統是 Windows 98 Second Edition 或更低版本,且文件系統不是 NTFS。 // // System.UnauthorizedAccessException: // sourceFileName 或 destinationFileName 參數指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -源參數或目標參數指定的是目錄,而不是文件。- // 或 -調用方沒有所要求的權限。 public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName); // // 摘要: // 用其餘文件的內容替換指定文件的內容,刪除原始文件,並建立被替換文件的備份和(可選)忽略合併錯誤。 // // 參數: // sourceFileName: // 替換由 destinationFileName 指定的文件的文件名。 // // destinationFileName: // 替換文件的名稱。 // // destinationBackupFileName: // 備份文件的名稱。 // // ignoreMetadataErrors: // 若是忽略從被替換文件到替換文件的合併錯誤(如屬性和訪問控制列表 (ACL)),則爲 true,不然爲 false。 // // 異常: // System.ArgumentException: // destinationFileName 參數描述的路徑不是合法的格式。- 或 -destinationBackupFileName 參數描述的路徑不是合法的格式。 // // System.ArgumentNullException: // destinationFileName 參數爲 null。 // // System.IO.DriveNotFoundException: // 指定了無效的驅動器。 // // System.IO.FileNotFoundException: // 找不到當前 System.IO.FileInfo 對象所描述的文件。- 或 -找不到 destinationBackupFileName 參數所描述的文件。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。- 或 -sourceFileName 和 destinationFileName 參數指定了相同的文件。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.PlatformNotSupportedException: // 操做系統是 Windows 98 Second Edition 或更低版本,且文件系統不是 NTFS。 // // System.UnauthorizedAccessException: // sourceFileName 或 destinationFileName 參數指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -源參數或目標參數指定的是目錄,而不是文件。- // 或 -調用方沒有所要求的權限。 public static void Replace(string sourceFileName, string destinationFileName, string destinationBackupFileName, bool ignoreMetadataErrors); // // 摘要: // 對指定的文件應用由 System.Security.AccessControl.FileSecurity 對象描述的訪問控制列表 (ACL) 項。 // // 參數: // path: // 在其中添加或移除訪問控制列表 (ACL) 項的文件。 // // fileSecurity: // 一個 System.Security.AccessControl.FileSecurity 對象,描述應用於由 path 參數描述的文件的 ACL // 項。 // // 異常: // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.Runtime.InteropServices.SEHException: // path 參數爲 null。 // // System.SystemException: // 未能找到文件。 // // System.UnauthorizedAccessException: // path 參數指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 參數指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.ArgumentNullException: // fileSecurity 參數爲 null。 public static void SetAccessControl(string path, FileSecurity fileSecurity); // // 摘要: // 設置指定路徑上文件的指定的 System.IO.FileAttributes。 // // 參數: // path: // 該文件的路徑。 // // fileAttributes: // 所需的 System.IO.FileAttributes,例如 Hidden、ReadOnly、Normal 和 Archive。 // // 異常: // System.ArgumentException: // path 爲空、只包含空白、包含無效字符或文件屬性無效。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.NotSupportedException: // path 的格式無效。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.FileNotFoundException: // 沒法找到該文件。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 public static void SetAttributes(string path, FileAttributes fileAttributes); // // 摘要: // 設置建立該文件的日期和時間。 // // 參數: // path: // 要設置其建立日期和時間信息的文件。 // // creationTime: // System.DateTime,它包含要爲 path 的建立日期和時間設置的值。該值用本地時間表示。 // // 異常: // System.IO.FileNotFoundException: // 未找到指定的路徑。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.IOException: // 執行操做時發生 I/O 錯誤。 // // System.ArgumentOutOfRangeException: // creationTime 指定的值超出了該操做所容許的日期範圍或時間範圍,或同時超出了日期範圍和時間範圍。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.NotSupportedException: // path 的格式無效。 public static void SetCreationTime(string path, DateTime creationTime); // // 摘要: // 設置文件建立的日期和時間,其格式爲協調通用時間 (UTC)。 // // 參數: // path: // 要設置其建立日期和時間信息的文件。 // // creationTimeUtc: // System.DateTime,它包含要爲 path 的建立日期和時間設置的值。該值用 UTC 時間表示。 // // 異常: // System.IO.FileNotFoundException: // 未找到指定的路徑。 // // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.IOException: // 執行操做時發生 I/O 錯誤。 // // System.ArgumentOutOfRangeException: // creationTime 指定的值超出了該操做所容許的日期範圍或時間範圍,或同時超出了日期範圍和時間範圍。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.NotSupportedException: // path 的格式無效。 public static void SetCreationTimeUtc(string path, DateTime creationTimeUtc); // // 摘要: // 設置上次訪問指定文件的日期和時間。 // // 參數: // path: // 要設置其訪問日期和時間信息的文件。 // // lastAccessTime: // System.DateTime,它包含要爲 path 的上次訪問日期和時間設置的值。該值用本地時間表示。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.FileNotFoundException: // 未找到指定的路徑。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.NotSupportedException: // path 的格式無效。 // // System.ArgumentOutOfRangeException: // lastAccessTime 指定超出該操做容許的日期或時間範圍的值。 public static void SetLastAccessTime(string path, DateTime lastAccessTime); // // 摘要: // 設置上次訪問指定的文件的日期和時間,其格式爲協調通用時間 (UTC)。 // // 參數: // path: // 要設置其訪問日期和時間信息的文件。 // // lastAccessTimeUtc: // System.DateTime,它包含要爲 path 的上次訪問日期和時間設置的值。該值用 UTC 時間表示。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.FileNotFoundException: // 未找到指定的路徑。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.NotSupportedException: // path 的格式無效。 // // System.ArgumentOutOfRangeException: // lastAccessTimeUtc 指定超出該操做容許的日期或時間範圍的值。 public static void SetLastAccessTimeUtc(string path, DateTime lastAccessTimeUtc); // // 摘要: // 設置上次寫入指定文件的日期和時間。 // // 參數: // path: // 要設置其日期和時間信息的文件。 // // lastWriteTime: // System.DateTime,它包含要爲 path 的上次寫入日期和時間設置的值。該值用本地時間表示。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.FileNotFoundException: // 未找到指定的路徑。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.NotSupportedException: // path 的格式無效。 // // System.ArgumentOutOfRangeException: // lastWriteTime 指定超出該操做容許的日期或時間範圍的值。 public static void SetLastWriteTime(string path, DateTime lastWriteTime); // // 摘要: // 設置上次寫入指定的文件的日期和時間,其格式爲協調通用時間 (UTC)。 // // 參數: // path: // 要設置其日期和時間信息的文件。 // // lastWriteTimeUtc: // System.DateTime,它包含要爲 path 的上次寫入日期和時間設置的值。該值用 UTC 時間表示。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.FileNotFoundException: // 未找到指定的路徑。 // // System.UnauthorizedAccessException: // 調用方沒有所要求的權限。 // // System.NotSupportedException: // path 的格式無效。 // // System.ArgumentOutOfRangeException: // lastWriteTimeUtc 指定超出該操做容許的日期或時間範圍的值。 public static void SetLastWriteTimeUtc(string path, DateTime lastWriteTimeUtc); // // 摘要: // 建立一個新文件,在其中寫入指定的字節數組,而後關閉該文件。若是目標文件已存在,則覆蓋該文件。 // // 參數: // path: // 要寫入的文件。 // // bytes: // 要寫入文件的字節。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null 或字節數組爲空。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static void WriteAllBytes(string path, byte[] bytes); // // 摘要: // 建立一個新文件,在其中寫入指定的字符串數組,而後關閉該文件。若是目標文件已存在,則覆蓋該文件。 // // 參數: // path: // 要寫入的文件。 // // contents: // 要寫入文件的字符串數組。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static void WriteAllLines(string path, string[] contents); // // 摘要: // 建立一個新文件,使用指定的編碼在其中寫入指定的字符串數組,而後關閉文件。若是目標文件已存在,則覆蓋該文件。 // // 參數: // path: // 要寫入的文件。 // // contents: // 要寫入文件的字符串數組。 // // encoding: // 一個 System.Text.Encoding 對象,表示應用於字符串數組的字符編碼。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null 或內容字符串爲空。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static void WriteAllLines(string path, string[] contents, Encoding encoding); // // 摘要: // 建立一個新文件,在其中寫入指定的字符串,而後關閉文件。若是目標文件已存在,則覆蓋該文件。 // // 參數: // path: // 要寫入的文件。 // // contents: // 要寫入文件的字符串。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static void WriteAllText(string path, string contents); // // 摘要: // 建立一個新文件,在其中寫入指定的字符串,而後關閉文件。若是目標文件已存在,則覆蓋該文件。 // // 參數: // path: // 要寫入的文件。 // // contents: // 要寫入文件的字符串。 // // encoding: // 一個 System.Text.Encoding 對象,表示應用於字符串的編碼。 // // 異常: // System.ArgumentException: // path 是一個零長度字符串,僅包含空白或者包含一個或多個由 System.IO.Path.InvalidPathChars 定義的無效字符。 // // System.ArgumentNullException: // path 爲 null 或內容字符串爲空。 // // System.IO.PathTooLongException: // 指定的路徑、文件名或者二者都超出了系統定義的最大長度。例如,在基於 Windows 的平臺上,路徑必須小於 248 個字符,文件名必須小於 260 // 個字符。 // // System.IO.DirectoryNotFoundException: // 指定的路徑無效(例如,它位於未映射的驅動器上)。 // // System.IO.IOException: // 打開文件時發生 I/O 錯誤。 // // System.UnauthorizedAccessException: // path 指定了一個只讀文件。- 或 -在當前平臺上不支持此操做。- 或 -path 指定了一個目錄。- 或 -調用方沒有所要求的權限。 // // System.IO.FileNotFoundException: // 未找到 path 中指定的文件。 // // System.NotSupportedException: // path 的格式無效。 // // System.Security.SecurityException: // 調用方沒有所要求的權限。 public static void WriteAllText(string path, string contents, Encoding encoding); } }
5、簡單示例
//在應用程序當前目錄下的File1.txt文件中追加文件內容,若是文件不存在就建立,默認編碼 File.AppendAllText("File1.txt", "這是文件內容A"); //在C盤根目錄下的File2.txt文件中追加文件內容,若是文件不存在就建立,指定編碼爲UTF8 File.AppendAllText(@"c:\File2.txt", "這是文件內容B",Encoding.UTF8); //讀取應用程序當前目錄下的File1.txt文件內容 String content = File.ReadAllText(@"File1.txt"); MessageBox.Show(content); //將C盤根目錄下的File2.txt文件加密 File.Encrypt(@"c:\File2.txt"); /* File.WriteAllLines("path",new string[4] ,Encoding.Default);//將string數組按行寫入文件。 File.WriteAllText("path","string");//將字符串所有寫入文件 File.WriteAllBytes("path",newbyte[5]);//將byte[]所有寫入到文件 File.AppendAllText()//將string追加到文件 File.ReadAllLines("path",Encoding.Default);//讀取全部行,返回string[] File.ReadAllText("path",Encoding.Default);//讀取全部文本返回string File.ReadAllBytes("path");//讀取文件,返回byte[],把文件做爲二進制來處理。 File.Copy("source","targetFileName",true);//文件拷貝,true表示當文件存在時"覆蓋",若是不加true,則文件存在報異常。 File.Exists();//判斷文件是否存在 File.Move("source","target");//移動(剪切),思考如何爲文件重命名?文件的剪切是能夠跨磁盤的。 File.Delete("path");//刪除。若是文件不存在?不存在,不報錯 File.Create("path");//建立文件 */