FileStream和BinaryReader,BinaryWriter,StreamReader,StreamWriter的區別

來源:互聯網
上載者:User

標籤:

FileStream對於在檔案系統上讀取和寫入檔案非常有用,FileStream緩衝輸入和輸出,以獲得更好的效能。FileStream對象表示在磁碟或網路路徑上指向檔案的流。這個類提供了在檔案中讀寫位元組的方法,但經常使用StreamReader或StreamWriter執行這些功能。這是因為FileSteam類操作的是位元組和位元組數組,而Stream類操作的是字元資料。FileStream只能處理原始位元組(raw byte),處理原始位元組的功能使用FileStream類可以用於處理任何資料檔案。通過讀取位元組資料,FileStream對象可以用於讀取圖形和聲音。代價是FileStream類不能將資料直接讀入字串。

FileStream常用屬性和方法。

Flush():將當前緩衝區的資料寫入檔案。

StreamReader類

實現一個TextReader,使其以一種特定的編碼從位元組流中讀取字元。

StreamWriter類

實現一個TextWriter,使其以一種特定的編碼向流中寫入字元

TextReader類

表示可讀取連續字元系列的讀取器。

TextWriter類

表示可以編寫一個有序字元系列的編寫器。該類為抽象類別。

BinaryReader類

用特定的編碼將基中繼資料類型讀作二進位值。你可以認為BinaryReader是對StreamReader的擴充,它有著比StreamReader更豐富的編碼方式

BinaryWriter

以二進位形式將基元類型寫入流,並支援用特定的編碼寫入字串。同binaryreader一樣.

BinaryWriter類和BinaryReader類用於讀取和寫入資料,它可以指定以字串寫入讀取.

StreamReader.BaseStream

返回基礎流。

 

BinaryReader和FileStream的區別

BinaryReader可以指定 Encoding,從而實現讀取字串。

FileStream 可讀可寫,並且支援非同步作業,還能封裝非託管IO控制代碼,只支援檔案流。

BinaryReader只能讀,不支援非同步作業,但支援所有繼承至 Stream 的任何流,比如 NetworkStream,MemoryStream.

FileStream和BinaryReader,BinaryWriter,StreamReader,StreamWriter的區別

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.