filestream物件表示在磁碟或網路路徑上指向檔案的流。這個類提供了在檔案中讀寫位元組的方法,使用filestream能夠對對系統上的檔案進行讀、寫、開啟、關閉等操作。並對其他與檔案相關的作業系統提供控制代碼操作,如管道,標準輸入和標準輸出。讀寫操作可以指定為同步或非同步操作。filestream對輸入輸出進行緩衝,從而提高效能。
對流進行操作時要引用 using system.io; 命名空間
filestream常用的屬性和方法:
屬性:
canread 判斷當前流是否支援讀取,返回bool值,true表示可以讀取
canwrite 判斷當前流是否支援寫入,返回bool值,true表示可以寫入
方法:
read() 從流中讀取資料,返回位元組陣列
write() 將位元組塊(位元組陣列)寫入該流
seek() 設定檔案讀取或寫入的起始位置
flush() 清除該流緩衝區,使得所有緩衝的資料都被寫入到檔案中
close() 關閉當前流並釋放與之相關聯的所有系統資源
檔案的訪問方式:(fileaccess)
包括三個列舉:
fileaccess.read(對檔案讀訪問)
fileaccess.write(對檔案進行寫操作)
fileaccess.readwrite(對檔案讀或寫操作)
檔案開啟模式:(filemode)包括6個列舉
filemode.create 指示作業系統應建立新檔案,如果檔案已經存在,它將被覆蓋
filemode.createnew 指示作業系統應建立新檔案,如果檔案已經存在,將引發異常
filemode.open 指示作業系統應開啟現有檔案,開啟的能力取決於fileaccess所指定的值
filemode.openorcreate 指示作業系統應開啟檔案,如果檔案不存在則建立新檔案
filemode.truncate 指示作業系統應開啟現有檔案,並且清空檔案內容
檔案共享方式:(fileshare)
fileshare方式是為了避免幾個程式同時訪問同乙個檔案會造成異常的情況。
檔案共享方式包括四個:
fileshare.none 謝絕共享當前檔案
fileshare.read 充許別的程式讀取當前檔案
fileshare.write 充許別的程式寫當前檔案
fileshare.readwrite 充許別的程式讀寫當前檔案
使用filestream類建立檔案流物件:
filestream(string 檔案路徑,filemode 檔案開啟模式)
filestream(string 檔案路徑,filemode 檔案開啟模式,fileaccess 檔案訪問方式)
filestream(string 檔案路徑,filemode 檔案開啟模式,fileaccess 檔案訪問方式,fileshare 檔案共享方式)例:
//在c盤建立a.txt檔案,使用fs流物件對檔案進行操作,fs的工作模式是新建(filemode.create)
filestream fs=new filestream(@"c:\a.txt",filemode.create);
//在c盤建立a.txt檔案,使用fs流物件對檔案進行操作,fs工作模式是新建(filemode.create)檔案的訪問模式是寫入(fileaccess.write)
filestream fs=new filestream(@"c:\a.txt",filemode.create,fileaccess.write);
//在c盤建立a.txt檔案,使用fs流物件對檔案進行操作,fs工作模式是新建(filemode.create)檔案的訪問模式是寫入(fileaccess.write)檔案的共享模式是謝絕共享(fileshare.none)
filestream fs=new filestream(@"c:\a.txt",filemode.create,fileaccess.write,fileshare.none);
使用file類來建立物件:(常用)
自定義開啟檔案的方式:file.open(string,filemode);
開啟檔案進行讀取: file.openread(string);
開啟檔案進行寫入: file.openwrite(string);
示例如下:
//在c盤新建123.txt檔案,使用流物件fs對檔案進行操作,fs可以進行讀檔案file.openread()
filestream fs=file.openread(@"c:\123.txt");
//在c盤新建123.txt檔案,使用流物件fs對檔案進行操作,fs可以進行寫操作file.openwrite()
filestream fs=file.openwrite(@"c:\123.txt");
使用file例:
對檔案進行讀操作:
//新建fs流物件物件產生的路徑是textbox1.text的值,檔案的模式是filemode.openorcreate(可讀可寫)
using (filestream fs = file.open(textbox1.text, filemode.openorcreate))
對檔案進行寫入操作:
//新建fs流物件,物件操作的檔案路徑在textbox1.text中,fs的操作模式是filemode.create
using (filestream fs = file.open(textbox1.text, filemode.create))
注:
對檔案的讀寫操多不管**有多少,無非就是下面的三步:
1.建立檔案讀寫流物件
2.對檔案進行讀寫
3.關閉檔案流
對js裡function的length屬性的理解
相信大家對陣列裡的length屬性應該不陌生,它表示陣列元素的個數,但是你有沒有留意過,function裡也有乙個length屬性,下面是我對該屬性的一點理解,希望對大家有所幫助。它表示該函式的形參個數,我們來看一下下面的例子 function fn a,b,c console.log fn.len...
FileStream的讀取和寫入
使用 filestream 類對檔案系統上的檔案進行讀取 寫入 開啟和關閉操作,並對其他與檔案相關的作業系統控制代碼進行操作,如管道 標準輸入和標準輸出。讀寫操作可以指定為同步或非同步操作。filestream 對輸入輸出進行緩衝,從而提高效能。先看 後面講解 using system using ...
FileStream的讀取和寫入
使用filestream類對檔案系統上的檔案進行讀取 寫入 開啟和關閉操作,並對其他與檔案相關的作業系統控制代碼進行操作,如管道 標準輸入和標準輸出。讀寫操作可以指定為同步或非同步操作。filestream對輸入輸出進行緩衝,從而提高效能。先看 後面講解 using system using sys...