操作某一個文件/文件夾,需要一個文件的完整路徑
一、使用File的靜態方法進行文件操作
//使用file的靜態方法進行復制 File.Copy(path, destpath); //使用File的靜態方法刪除路徑下的一個文件 File.Delete(path); //使用File的靜態方法移動路徑下的一個文件 File.Move(path, destpath); File.ReadAllText(path); //打開一個文本文件*.txt ,讀取文件中數據,然后關閉該文件 //寫入 File.WriteAllText(path, "要寫入文件的字符串"); //創建一個文件,向其中寫入數據,如果此路徑下有同名文件則會覆
PS:對文件進行寫入操作,如果路徑下有同名文件則會進行覆蓋,所以最好進行一次判斷,跟用戶交互一下在進行覆蓋
二、實例化FileInfo進行操作
FileInfo myfile = new FileInfo(path); //聲明一個對象對某一個文件進行操作 myfile.CopyTo(destpath); //對文件進行復制操作,復制路徑為destpath myfile.MoveTo(destpath); //進行移動操作 myfile.Delete(); //進行刪除操作
獲得某一文件或文件夾的詳細信息(創建日期,最后一次修改日期等等)
獲取一個文件,或者文件夾的詳細信息。(創建日期,文件名等) 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 FileInfo
Directory/File只包含靜態方法,不能被實例化,只需要提供合適的文件系統對象路徑就可以使用,使用效率較高
當只對文件或文件夾執行一次操作,使用這些就很有效。
DirectoryInfo/FileInfo 如果使用一個對象執行多個操作,使用這些類就很高效。
因為它們在構造時就讀取了文件系統對象的身份驗證和其他信息,無論調用了多少方法,都不需要再次讀取這些信息。
上面只列出了操作文件,操作文件夾則需要用DirectoryInfo或Directory
C#操作流對象
//待更新