1、FileInfo和 DirectoryInfo 类的属性和方法
using System;using System.IO;/** c#编程高级学习* TextOperation* 2020/4/8*/namespace TextOperation{class Program{static void Main(string[] args){//文本操作//绝对路径 加上文件完整的路径名FileInfo fileInfo = new FileInfo(@\"D:\\Unity\\TextOperation\\TextFile1.txt\");//Exists 该文件存在则返回true,否则返回falseConsole.WriteLine(fileInfo.Exists);//Name 取得文件名Console.WriteLine(fileInfo.Name);//Directory 取得目录路径Console.WriteLine(fileInfo.Directory);//Length 取得文件大小(字节)Console.WriteLine(fileInfo.Length);//fileInfo.CopyTo(\"File.txt\"); //复制//fileInfo.Delete(); //删除FileInfo fileInfo1 = new FileInfo(@\"D:\\Unity\\TextOperation\\File1.txt\");if (fileInfo1.Exists == false){fileInfo1.Create(); //生成}//fileInfo1.MoveTo(\"File2.txt\"); //相当于剪切重命名//文件夹操作DirectoryInfo dirInfo = new DirectoryInfo(@\"D:\\Unity\\TextOperation\");Console.WriteLine(dirInfo.CreationTime); //创建时间dirInfo.CreateSubdirectory(\"Role\"); //创建子文件夹Console.ReadKey();}}}
2、使用File读写文件
using System;using System.IO;/** c#编程高级学习* 使用File读写文件* 2020/4/8*/namespace 使用File读写文件{class Program{static void Main(string[] args){//把每一行文本读取成一个字符串,最后组成一个字符串的数组//string[] strArray = File.ReadAllLines(@\"D:\\Unity\\使用File读写文件\\Text1.txt\");//把文本读取成一个字符串//string s = File.ReadAllText(@\"D:\\Unity\\使用File读写文件\\Text1.txt\");//Console.WriteLine(s);//把图片读取成字节数组byte[] byteArray = File.ReadAllBytes(@\"D:\\Unity\\使用File读写文件\\捕获03.PNG\");//生成或覆盖文本,写入一个字符串数组 (此处使用相对路径)File.WriteAllLines(\"Text1.txt\", new string[] { \"asd\",\"rew\",\"trg\"});//生成或覆盖文本,写入一个字符串File.WriteAllText(\"Text1.txt\", \"aewfgre\");//相当于完成一个复制File.WriteAllBytes(\"Text1.txt\", byteArray);Console.WriteLine(\"Hello World!\");Console.ReadKey();}}}
3、使用FileStream读写文件
using System;using System.IO;/** c#编程高级学习* 使用FileStream读写文件* 2020/4/8*/namespace 使用FileStream读写文件{class Program{static void Main(string[] args){//1、创建文件流用来操作文件//FileStream fileStream = new FileStream(@\"D:\\Unity\\使用FileStream读写文件\\TextFileA.txt\",// FileMode.Open);//byte[] data = new byte[1024]; //数据容器////2、读取或者写入数据 Read 返回读入缓冲区中的总字节数(到达流的末尾,返回0)//int length = fileStream.Read(data, 0, data.Length);//while (true)//{// if (length == 0)// {// Console.WriteLine(\"读取结束\");// }// for(int i = 0; i < length; i++)// {// Console.Write(data[i]+\" \");// }//}//2、使用文件流来完成图片复制FileStream readStream = new FileStream(@\"D:\\Unity\\使用FileStream读写文件\\批注 2019-12-26 140259.png\",FileMode.Open);FileStream WriteStream = new FileStream(\"fuben.png\", FileMode.Create);byte[] data = new byte[1024];int length = readStream.Read(data, 0, data.Length);while (true){if (length == 0){Console.WriteLine(\"读取结束\");}else{WriteStream.Write(data, 0, length);}}WriteStream.Close();readStream.Close();Console.ReadKey();}}}
4、使用StreamReader和StreamWriter读写文本文件
using System;using System.IO;/** c#编程高级学习* 使用StreamReader和StreamWriter读写文本文件* 2020/4/10*/namespace 使用StreamReader和StreamWriter读写文本文件{class Program{static void Main(string[] args){//文本文件读取流//StreamReader reader = new StreamReader(\"Text1.txt\");//方法1//while (true)//{// string str = reader.ReadLine(); //读取一行字符串// if (str == null)// break;// Console.WriteLine(str);//}//方法2//reader.ReadToEnd(); //读取所有字符串//方法3//while (true)//{// int res = reader.Read(); //读取// if (res == -1)// {// break;// }// Console.Write((char)res);//}//reader.Close();//文本文件写入流StreamWriter writer = new StreamWriter(\"Test2.txt\");while (true){string input = Console.ReadLine();if (input == \"s\"){break;Console.WriteLine(\"用户输入完毕\");}writer.WriteLine(input); //写入一个字符串并换行}writer.Close();Console.WriteLine(\"Hello World!\");Console.ReadKey();}}}
5、总结