C#中File類的文件操作辦法詳解。本站提示廣大學習愛好者:(C#中File類的文件操作辦法詳解)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中File類的文件操作辦法詳解正文
本文實例講述了C#中File類的文件操作辦法。分享給年夜家供年夜家參考。詳細剖析以下:
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()
{
FileStream.TextFile=File.Open(@"c:\tempuploads\newFile.txt",FileMode.Append);
byte [] Info = {(byte)'h',(byte)'e',(byte)'l',(byte)'l',(byte)'o'};
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()
{
FileStream NewText=File.Create(@"c:\tempuploads\newFile.txt");
NewText.Close();
}
(3) 文件刪除辦法:File.Delete()
該辦法聲明以下:
public static void Delete(string path);
上面的代碼演示若何刪除c:\tempuploads目次下的newFile.txt文件。
private void DeleteFile()
{
File.Delete(@"c:\tempuploads\newFile.txt");
}
(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()
{
File.Copy(@"c:\tempuploads\newFile.txt",@"c:\tempuploads\BackUp.txt",true);
}
(5) 文件挪動辦法:File.Move
該辦法聲明以下:
public static void Move(string sourceFileName,string destFileName);
上面的代碼可以將c:\tempuploads下的BackUp.txt文件挪動到c盤根目次下。
留意:
只能在統一個邏輯盤下停止文件轉移。假如試圖將c盤下的文件轉移到d盤,將產生毛病。
private void MoveFile()
{
File.Move(@"c:\tempuploads\BackUp.txt",@"c:\BackUp.txt");
}
(6) 設置文件屬性辦法:File.SetAttributes
該辦法聲明以下:
public static void SetAttributes(string path,FileAttributes fileAttributes);
上面的代碼可以設置文件c:\tempuploads\newFile.txt的屬性為只讀、隱蔽。
private void SetFile()
{
File.SetAttributes(@"c:\tempuploads\newFile.txt",
FileAttributes.ReadOnly|FileAttributes.Hidden);
}
文件除經常使用的只讀和隱蔽屬性外,還有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")) //斷定文件能否存在
{
CopyFile(); //復制文件
DeleteFile(); //刪除文件
MoveFile(); //挪動文件
}
else
{
MakeFile(); //生成文件
OpenFile(); //翻開文件
SetFile(); //設置文件屬性
}
另外,File類關於Text文本供給了更多的支撐。
· AppendText:將文本追加到現有文件
· CreateText:為寫入文本創立或翻開新文件
· OpenText:翻開現有文本文件以停止讀取
但上述辦法重要對UTF-8的編碼文本停止操作,從而顯得不敷靈巧。在這裡推舉讀者應用上面的代碼對txt文件停止操作。
· 對txt文件停止“讀”操作,示例代碼以下:
StreamReader TxtReader = new StreamReader(@"c:\tempuploads\newFile.txt",System.Text.Encoding.Default);
string FileContent;
FileContent = TxtReader.ReadEnd();
TxtReader.Close();
· 對txt文件停止“寫”操作,示例代碼以下:
StreamWriter = new StreamWrite(@"c:\tempuploads\newFile.txt",System.Text.Encoding.Default);
string FileContent;
TxtWriter.Write(FileContent);
TxtWriter.Close();
願望本文所述對年夜家的C#法式設計有所贊助。