国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C# IO

2019-11-17 02:30:42
字體:
來源:轉載
供稿:網友

C# IO

在.NET框架中進行的所有IO操作都要用到流(Stream)。

System.IO命名空間中包含許多IO相關的類,C#文件讀寫的類幾乎都在其中,下面對其進行詳細介紹。

image

主要類列表:

說明
BinaryReader 用特定編碼將基元數據讀作二進制值。
BinaryWriter 以二進制形式將基元類型寫入流,并支持用特定的編碼寫入字符串
BufferedStream 給另一流上的讀寫操作添加一個緩沖層。
Directory 靜態實用類,提供用于創建、移動和枚舉目錄和子目錄的靜態方法
DirectoryInfo 表示磁盤上的物理目錄,此類包含處理目錄的實例方法。
DriveInfo 提供有關驅動器信息的訪問。
File 提供用于創建、復制、刪除、移動和打開文件的靜態方法,并協助創建FileStream對象。
FileInfo 提供用于創建、復制、刪除、移動和打開文件的實例方法,并幫助創建FileStream對象。
FileStream 文件Stream對象,既支持同步讀寫文件,也支持異步讀寫操作。
FileSystemInfo FileInfo和DirectoryInfo的基類,根據多態性可以同時處理文件和目錄
MemoryStream 存儲區為內存的流。
Path 對包含文件或目錄信息的string執行操作的靜態成員。
StreamReader 實現TextReader,使其以特定編碼從流中讀取字符數據,可以使用FileStream將其創建為基類
StreamWriter 實現TextWriter,使其以特定編碼向流中寫字符數據,可以使用FileStream將其創建為基類
StringReader 實現從字符串進行讀取的TextReader
StringWriter 實現一個用于將信息寫入字符串的TextWriter。該信息存儲在StringBuilder中
TextReader 表示可讀取連續字符的讀取器
TextWriter 表示可編寫一個有序字符的編寫器。抽象類。
System.MarshalByRefObject .NET中用于遠程操作的類的基類,它允許在不同應用程序之間編組數據。下面的項都在System.IO中。
FileSystemWatcher

FileSystemWatcher 用于監控文件和目錄,提供了這些文件和目錄發生變化時應用程序可以捕獲的事件。

另外在System.IO.ComPRession名稱空間的類,可用于GZip或Deflate壓縮文件的讀寫:

  • DeflateStream——使用Deflate算法實現自動壓縮或解壓縮的文件流。
  • GZipStream——使用GZIP算法實現自動壓縮或解壓縮的文件流。

從上表可以看到有多種可用于處理文件IO的流,最重要的類型是FileStream類,它提供了讀寫文件的功能。其他的還有BufferedStream, CryptoStream, MemoryStream和NetworkStream等。

File類

方法 說明
Copy 將文件從源位置復制到目標位置
Create 在指定路徑上創建文件
Delete 刪除文件,如果文件不存在,不引發異常
Exists 確定指定的文件是否存在
Move 將指定文件移動新位置,并提供指定新文件名選項
Open 返回指定路徑上的FileStream對象
CreateText 創建或打開一個文件用于寫入UTF-8文本
GetCreationTime 返回指定文件或目錄的創建日期和時間
GetLastaccessTime 返回上次訪問指定文件或目錄的日期和時間
GetLastWriterTime 返回上次寫入指定文件或目錄的日期和時間
OpenRead 打開現有文件進行讀取
OpenText 打開現有UTF-8文本文件進行讀取
OpenWriter 打開現有文件進行寫入
ReadAllBytes 打開一個文本文件,將文件的內容讀入一個字節數組,然后關閉該文件
ReadAllLines 打開一個文本文件,將文件的所有行讀取一個字符串數組,然后關閉該文件
ReadAllText 打開一個文本文件,將文件的所有內容讀入一個字符串,然后關閉該文件
Replace 使用其他文件的內容替換指定文件的內容,這一過程將刪除原始文件,并創建被替換文件的備份。

 

FileInfo

FileInfo類和File類有許多方法相同,但不是靜態類,可實例化,用于表示磁盤或網絡位置上的文件。如:

FileInfo aFile = new FileInfo("Version.hpp");

FileInfo和File類由許多類似的方法,如下:

FileInfo aFile = new FileInfo("Version.hpp");if(aFile.Exists)    Console.WriteLine("File Exists");if(File.Exists("Version.hpp"))    Console.WriteLine("File Exists");

這段代碼檢查文件Version.hpp是否存在,這里沒有指定目錄信息,此時為當前工作目錄。

什么使用使用FileInfo,什么時候使用File,可以遵循以下原則:

  • 如果僅進行單一方法調用,則可以使用靜態File類。此時,單一調用要快i一些,因為不必實例化新對象。
  • 如果要在文件上執行幾種操作,則實例化FileInfo對象并使用其方法更好一些。這樣比較節省時間,因為對象已在文件系統上引用正確文件,而靜態類必須每次都尋找文件。

FileInfo類也提供了許多與底層文件相關的屬性,大多屬性繼承于FileSystemInfo,可應用于File和Directory類。FileSystemInfo類的屬性如下:

        屬性 說明
        Attributes 使用FileAttributes枚舉,獲取或設置當前文件或目錄的特性。
        CreationTime, CreationTimeUtc 獲取當前文件的創建日期和時間,可以使用UTC和非UTC版本
        Extension 獲取文件擴展名,只讀屬性
        Exists 確定文件是否存在,只讀屬性,在FileInfo和DirectoryInfo中被重寫
        FullName 文件完整路徑,只讀
        LastAccessTime, LastAccessTimeUtc 獲取或設置上次訪問當前文件的日期和時間,包含UTC和非UTC版本
        LastWriteTime, LastWriteTimeUtc
        發表評論 共有條評論
        用戶名: 密碼:
        驗證碼: 匿名發表
        主站蜘蛛池模板: 门源| 京山县| 昌黎县| 交口县| 方城县| 钟祥市| 定南县| 交城县| 错那县| 灵山县| 福安市| 绥棱县| 资阳市| 垣曲县| 泰安市| 普定县| 杨浦区| 德州市| 景德镇市| 泽库县| 永兴县| 满洲里市| 灵石县| 锡林浩特市| 贵德县| 武平县| 金坛市| 临洮县| 隆尧县| 大兴区| 永胜县| 和顺县| 福建省| 岐山县| 洪洞县| 安丘市| 靖江市| 龙江县| 南皮县| 宕昌县| 济宁市|