操做某一個文件/文件夾,須要一個文件的完整路徑對象
1、使用File的靜態方法進行文件操做blog
//使用file的靜態方法進行復制 File.Copy(path, destpath); //使用File的靜態方法刪除路徑下的一個文件 File.Delete(path); //使用File的靜態方法移動路徑下的一個文件 File.Move(path, destpath); File.ReadAllText(path); //打開一個文本文件*.txt ,讀取文件中數據,而後關閉該文件 //寫入 File.WriteAllText(path, "要寫入文件的字符串"); //建立一個文件,向其中寫入數據,若是此路徑下有同名文件則會覆
PS:對文件進行寫入操做,若是路徑下有同名文件則會進行覆蓋,因此最好進行一次判斷,跟用戶交互一下在進行覆蓋字符串
2、實例化FileInfo進行操做string
FileInfo myfile = new FileInfo(path); //聲明一個對象對某一個文件進行操做 myfile.CopyTo(destpath); //對文件進行復制操做,複製路徑爲destpath myfile.MoveTo(destpath); //進行移動操做 myfile.Delete(); //進行刪除操做
得到某一文件或文件夾的詳細信息(建立日期,最後一次修改日期等等)it
獲取一個文件,或者文件夾的詳細信息。(建立日期,文件名等) FileInfo myfile = new FileInfo(path); //聲明一個對象對某一個文件進行操做 DateTime dt = myfile.CreationTime; //獲取或設置文件/文件夾的建立日期 string filepath = myfile.DirectoryName; //僅能用於FileInfo,得到完整的路徑名,路徑+文件名 bool file = myfile.Exists; //此屬性的值表示文件或文件夾是否存在,存在會返回True string fullname = myfile.FullName; //獲取文件或文件夾的完整路徑名 DateTime lastTime = myfile.LastAccessTime; //獲取或設置最後一次訪問文件或文件夾的時間 DateTime lastWrite = myfile.LastWriteTime; //獲取或設置最後一次修改文件夾或文件夾的時間 string name = myfile.Name; //獲取文件名,不能修改哦 long length = myfile.Length; //返回文件的字節大小 //CreationTime,LastAccessTime,LastWriteTime都是能夠被修改的。
如何選擇用哪個類? File or FileInfoio
Directory/File只包含靜態方法,不能被實例化,只須要提供合適的文件系統對象路徑就能夠使用,使用效率較高ast
當只對文件或文件夾執行一次操做,使用這些就頗有效。class
DirectoryInfo/FileInfo 若是使用一個對象執行多個操做,使用這些類就很高效。效率
由於它們在構造時就讀取了文件系統對象的身份驗證和其餘信息,不管調用了多少方法,都不須要再次讀取這些信息。file
上面只列出了操做文件,操做文件夾則須要用DirectoryInfo或Directory
C#操做流對象
//待更新