.net中對文件操做,常常會用到這樣幾個類:數組
static void Main(string[] args) { string path =@"目錄"; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); //若是目錄不存在就建立目錄 } Console.ReadKey(); }
static void Main(string[] args) { string path=@"目錄"; if (Directory.Exists(path)) { //Directory.Delete(path);//刪除空目錄 ,目錄下沒有文件了。 Directory.Delete(path, true);////無論空不空,都刪! } Console.ReadKey(); }
File類能夠進行對一些小文件的拷貝,剪切操做。還能讀取一些文檔文件ide
遍歷目錄下的文件:post
static void Main(string[] args) { IEnumerable<string> file1 = Directory.EnumerateFiles(@"目錄"); IEnumerator<string> fileenum = file1.GetEnumerator(); while (fileenum.MoveNext()) //移動一下讀取一個 { Console.WriteLine(fileenum.Current); } Console.ReadKey(); }
文件流類,負責文件的拷貝,讀取編碼
文件的讀取:spa
using (Stream file = new FileStream("目錄文件", FileMode.Open)) { byte[] bytes = new byte[4]; //讀取數據的一個緩衝區 int len; while((len=file.Read(bytes,0,bytes.Length))>0) //每次讀取bytes4字節的數據到 { //bytes中 string s = Encoding.Default.GetString(bytes,0,len); Console.WriteLine(s); } }
文件的寫入:.net
//建立文件流 Stream file = new FileStream(@"d:\temp.txt", FileMode.Create); //按默認編碼將內容讀取到數組中 byte[] bytes = Encoding.Default.GetBytes("IO流操做讀寫換行\r\nhelloWord"); file.Write(bytes, 0, bytes.Length); //讀取bytes數組,0位置開始讀,讀取長度 file.Close();//文件寫入完畢後必定要關閉文件
static void Main(string[] args) { using (StreamWriter sw = new StreamWriter("e:\\temp.txt",false, Encoding.UTF8))//true表示日後追加 { sw.WriteLine("hello"); } Console.ReadKey(); }
static void Main(string[] args) { using(StreamReader sr = new StreamReader("e:\\temp.txt",Encoding.Default)) { string str; while ((str=sr.ReadLine()) != null) //每次讀取一行 { Console.WriteLine(str); } } Console.ReadKey(); }