WriteFile.cs
1 using System; 2 3 using System.IO; 4 5 namespace IO_读写文件 6 { 7 class CRead_Write_File 8 { 9 /// <IsExits() > 判断file_name是否已经存在 10 /// </IsExits() > 11 /// 12 /// <param name="file_name"> 文件名(如果不和执行文件在同一个目录下,则需要带上全路径) 13 /// </param> 14 /// 15 /// <returns> 1.存在: true; 2.不存在: false 16 /// </returns> 17 public bool IsExits(string file_name) 18 { 19 // Exists()判断文件是否存在; 存在 : true 2.不存在: false 20 if ( File.Exists(file_name) ) 21 { 22 return true; 23 } 24 return false; 25 } 26 27 /// < Create() 说明 >创建文件 28 /// </Create()说明 > 29 /// 30 /// <param name="file_name">文件名(默认与执行文件处于同一个目录下) 31 /// </param> 32 /// 33 /// <returns> 1.创建成功:1 ; 2. 文件已存在: 0 ; 3.创建失败:-1 34 /// </returns> 35 public int Create(string file_name) 36 { 37 if ( IsExits(file_name) ) 38 { 39 return 0; // file_name 文件存在 , 不用再次创建, 返回 0 40 } 41 42 // 如果不存在则创建 file_name 43 using( FileStream fs = new FileStream(file_name, FileMode.Create) ) 44 { 45 try 46 { 47 } 48 finally 49 { 50 fs.Close(); // 必须关闭 51 } 52 } 53 54 if (IsExits(file_name)) 55 { 56 return 1; // 创建成功, 返回 1 57 } 58 return -1; // 创建失败, 返回 -1 59 } 60 61 /// <Write() 说明>向目标文件写入字符串 62 /// </Write 说明> 63 /// 64 /// <param name="log">要写入的字符串 65 /// <param name="tw">目标文件的缓冲区 66 /// </param> 67 public void Write(string log, TextWriter tw) 68 { 69 tw.WriteLine(log); 70 tw.Flush(); 71 } 72 73 } 74 }
Program.cs
1 using System; 2 3 using System.IO; 4 5 namespace IO_读写文件 6 { 7 class Program 8 { 9 static void Main(string[] args) 10 { 11 const string FILE_NAME = "Test_Write.txt"; 12 CRead_Write_File rwf = new CRead_Write_File(); 13 14 // 1.测试创建文件 15 switch (rwf.Create(FILE_NAME)) 16 { 17 case 0: 18 Console.WriteLine("Test_Write.txt 文件已存在,不需要重复创建."); 19 break; 20 case 1: 21 Console.WriteLine("Test_Write.txt 创建成功!"); 22 break; 23 case -1: 24 Console.WriteLine("Test_Write.txt 创建失败!"); 25 break; 26 } 27 28 // 2.测试写入文件 29 using (StreamWriter sw = File.AppendText(FILE_NAME)) 30 { 31 try 32 { 33 rwf.Write("hehe", sw); 34 rwf.Write("hello world 你好!", sw); 35 } 36 finally 37 { 38 sw.Close(); 39 } 40 } 41 42 // 3.测试读取文件 43 if (false == rwf.IsExits(FILE_NAME)) 44 { 45 Console.WriteLine("{0} 不存在", FILE_NAME); 46 return; 47 } 48 49 using (StreamReader sr = File.OpenText(FILE_NAME)) 50 { 51 try 52 { 53 string readdata = ""; 54 while ( null != ( readdata = sr.ReadLine() ) ) 55 { 56 Console.WriteLine(readdata); 57 } 58 } 59 finally 60 { 61 sr.Close(); 62 } 63 } 64 65 66 Console.ReadLine(); 67 } 68 } 69 }