對FileStream的幾種屬性和方法認識

2021-07-28 05:07:03 字數 3169 閱讀 9943

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...