file類,是乙個靜態類,主要是來提供一些函式庫用的。靜態實用類,提供了很多靜態的方法,支援對檔案的基本操作,包括建立,拷貝,移動,刪除和開啟乙個檔案。file類方法的參量很多時候都是路徑path。file的一些方法可以返回filestream和streamwriter的物件。可以和他們配套使用。
system.io.file類和system.io.fileinfo類主要提供有關檔案的各種操作,在使用時需要引用system.io命名空間。下面通過程式例項來介紹其主要屬性和方法。
(1) 檔案開啟方法:file.open ()
該方法的宣告如下:
public
static
filestream
open
(string path,
filemode mode)
下面的**開啟存放在c:\tempuploads目錄下名稱為newfile.txt檔案,並在該檔案中寫入hello
private
void
openfile()
; textfile.
write
(info,
0,info.length)
; textfile.
close()
;}
(2) 檔案建立方法:file.create()
該方法的宣告如下:
public
static filestream create
(string path)
下面的**演示如何在c:\tempuploads下建立名為newfile.txt的檔案。
由於file.create方法預設向所有使用者授予對新檔案的完全讀/寫訪問許可權,所以檔案是用讀/寫訪問許可權開啟的,必須關閉後才能由其他應用程式開啟。為此,所以需要使用filestream類的close方法將所建立的檔案關閉。
private
void
makefile()
(3) 檔案刪除方法:file.delete()
該方法宣告如下:
public
static
void
delete
(string path)
;
下面的**演示如何刪除c:\tempuploads目錄下的newfile.txt檔案。
private
void
deletefile()
(4) 檔案複製方法:file.copy
該方法宣告如下:
public
static
void
copy
(string sourcefilename,
string destfilename,
bool overwrite)
;
下面的**將c:\tempuploads\newfile.txt複製到c:\tempuploads\backup.txt。
由於cope方法的overwrite引數設為true,所以如果backup.txt檔案已存在的話,將會被複製過去的檔案所覆蓋。
private
void
copyfile()
(5) 檔案移動方法:file.move
該方法宣告如下:
public
static
void
move
(string sourcefilename,
string destfilename)
;
下面的**可以將c:\tempuploads下的backup.txt檔案移動到c盤根目錄下。
注意:只能在同乙個邏輯盤下進行檔案轉移。如果試圖將c盤下的檔案轉移到d盤,將發生錯誤。
private
void
movefile()
(6) 設定檔案屬性方法:file.setattributes
該方法宣告如下:
public
static
void
setattributes
(string path,
fileattributes fileattributes)
;
下面的**可以設定檔案c:\tempuploads\newfile.txt的屬性為唯讀、隱藏。
private
void
setfile()
檔案除了常用的唯讀和隱藏屬性外,還有archive(檔案存檔狀態),system(系統檔案),temporary(臨時檔案)等。關於檔案屬性的詳細情況請參看msdn中fileattributes的描述。
(7) 判斷檔案是否存在的方法:file.exist
該方法宣告如下:
public
static
bool
exists
(string path)
;
下面的**判斷是否存在c:\tempuploads\newfile.txt檔案。若存在,先複製該檔案,然後其刪除,最後將複製的檔案移動;若不存在,則先建立該檔案,然後開啟該檔案並進行寫入操作,最後將檔案屬性設為唯讀、隱藏。
if
(file.
exists
(@"c:\tempuploads\newfile.txt"))
//判斷檔案是否存在
else
此外,file類對於text文字提供了更多的支援。
streamreader txtreader =
newstreamreader
(@"c:\tempuploads\newfile.txt"
,system.text.encoding.default)
;string filecontent;
filecontent = txtreader.
readend()
;txtreader.
close()
;
· 對txt檔案進行「寫」操作,示例**如下
streamwriter =
newstreamwrite
(@"c:\tempuploads\newfile.txt"
,system.text.encoding.default)
;string filecontent;
txtwriter.
write
(filecontent)
;txtwriter.
close()
;
檔案操作方法
1 讀系列 2 寫系列 需要注意的是 1 一次性讀完以後,游標停留在了檔案末尾,無法再次讀取內容 2 該方法在讀取大檔案的時候,可能會造成記憶體溢位的情況。解決上述問題的策略就是逐行讀取檔案內容。以後涉及到多行檔案內容的情況一般都採用for迴圈讀取。1 t 文字模式 文字模式是檔案操作的預設模式 r...
檔案操作方法
目錄 f.read讀取所有檔案的時候,如果是小檔案還好,如果是資料特別大得到檔案,就問造成記憶體溢位從而導致電腦宕機 t 文字模式 1.預設的模式 r w a rt wt at 2.該模式所有操作都是以字串基本單位 文字 3.該模式必須要指定encoding引數 4.該模式只能操作文字檔案 b 二進...
檔案操作方法總結
import os 檢視操作型別,nt表示windows,posix表示unix print os.name 可以執行系統命令 清空螢幕 os.system cls 啟動計算器 os.system calc 環境變數 所有環境變數 env os.environ for key in env prin...