filestream類(檔案流)類用於讀寫檔案中的資料,它既支援同步讀寫操作,也支援非同步讀寫操作。使用檔案流可以對檔案進行讀取、寫入、開啟和關閉操作,以及系統相關操作的標準輸入、標準輸出等。
filestream類包括9個屬性,它們可以描述filestream類的例項的特性,如流的長度(以位元組為單位)、流的當前位置、是否能夠讀或寫或查詢等。filestream類的屬性的具體說明如表:
filestream類的屬性表
屬 性 說 明
length
獲取流的長度
canseek
指示當前流是否支援查詢
name
獲取filestream的名稱
cantimeout
表示當前流是否可以超時
positi/on
獲取或設定此流的當前位置
readtimeout
指定流在超時前嘗試讀取多長時間
canread
指示當前流是否支援讀取
isasync
表示當前流是非同步還是同步開啟的
canwrite
指示當前流是否支援寫入
length屬性可以獲取流的長度,每乙個單位的長度表示乙個位元組。
除了上述屬性之外,filestream類包括11個方法,它們可以用來開啟、關閉、讀取和寫入檔案,如讀取檔案的read()方法、寫入檔案的write()方法等。filestream類的方法的具體說明如表:
filestream類的例項方法表
方 法
說 明
read()
從流中讀取位元組塊並將該資料寫入給定緩衝區中
readbyte()
從檔案中讀取乙個位元組,並將讀取位置提公升乙個位元組
write()
使用從緩衝區讀取的資料將位元組塊寫入該流
writebyte()
將乙個位元組寫入檔案流的當前位置
seek()
設定當前流的當前位置
續表方 法
說 明
setlength()
設定當前流的長度
beginread()
開始非同步讀
beginwrite()
開始非同步寫
endread()
等待掛起的非同步讀取完成
lock()
允許讀取訪問的同時防止其他程序更改 filestream
unlock()
允許其他程序訪問以前鎖定的某個檔案的全部或部分
readbyte()方法每一次讀取檔案的乙個位元組內容,並返回乙個int型別的結果。讀取內容之後,並將流的當前位置設定為下乙個位置。
read()和write()方法用於同步讀寫操作,beginread()、beginwrite()、endread()、lock()和unlock()方法一般用於以非同步方式讀取或寫入流的內容。同步是指程式在進行讀寫時,其他活動停止。非同步允許先讀寫資料,在公共語言執行庫中完成請求後可以開始處理其他事情。filestream類的預設方式是同步讀\寫操作。
C 類FileStream的使用
指定作業系統開啟檔案的方式 對於讀 寫或讀 寫訪問的檔案中定義的常數 包含用於控制的訪問其他型別的常數 system.io.filestream 物件可以具有相同的檔案 filestream派生於抽象類stream,stream抽象類實現了idisposable介面 常用構造方法 常用方法 屬性 u...
C 中的IO流操作(FileStream)
streamreader和streamwriter適用於對文字檔案的操作,因為它是以字元為單位進行的操作 不用擔心編碼問題 using stream s new filestream c users qq desktop 新建資料夾 html qq.txt filemode.open,fileacc...
3 5 檔案流FileStream綜合案例
本案例您將學習到 n如何通過使用者選擇資料夾,獲取資料夾資訊。n如何通過使用者選擇檔案,獲取檔案資訊。n如何通過檔案流建立乙個新的文字檔案。n如何開啟文字檔案後重新寫文字資訊流。n如何在 c 中定義檔案和資料夾。n檔案流的資源釋放意義以及釋放資源的基本順序。u 實驗步驟 1 由圖 3 9 所示,從工...