C#之文件管理,读取,写入文件基本语句

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yyp0304Devin/article/details/84967892

一、前言

在学习C#文件管理类的时候涉及到了很多关于文件的基本操作和基本方法。现在把这些基本操作和方法简单的总结一下。

1.基本操作:判断、复制、移动、删除

2.基本方法

(1)Feil.Exist();

(2)File.Copy();

(3)File.Move();

(4)File.Delete();

二、实例演示

1.创建文件

string path = @"E:\提高班\计算机\2.CS学习\02 C#\传智播客基础实训3\20121106C#基础\book.txt";
         
File.Create(path);//这个在指定路径下创建一个文件,如果文件存在则覆盖该文件。




File.CreateText(path);//创建或者打开一个文件写入UTF-8编辑的文本。

2.判断文件

 bool flag =File.Exists(path);
        
 if (File.Exists(path))      //判断这个路径下有没有这个文件,有就删除,没有就创建一个   
 {
     File.Delete(path);
 }
 else 
 {
     File.Create(path);
 }

3.移动文件

创建一个文件夹,把之前文件夹中的东西移动到新建的文件夹里。

 //把文件移动到指定的路径下,可以改名,如果那个路径下有这个文件,会报异常
 File.Move(path,path1);

  4. 复制文件 

复制路径的时候如果另一个路径中有这个文件了 , 名字相同,会报异常,可以利用这个方法重载,在第三个参数的位置上写上true,就可以覆盖那个文件了。

File.Copy(path,path1,true )//这个方法是把这个文件复制到另一个路径下,复制的同时也可以修改。

-------------------------------------------------------------------------------------------------------------------------------

除了这些基本方法外还有一些其他的常用方法

1.获取当前时间

 DateTime dt= new DateTime() ;

 Console.WriteLine(dt.Day );

2.获取当前时间和日期

DateTime dt = new DateTime();
Console.WriteLine(DateTime .Now  );

3.创建一个文件夹,获得创建时间

DateTime dt = File.GetCreationTime(path);
Console.WriteLine(dt);

4.获取修改时间

DateTime dt = File.GetCreationTime(path);

5.获取到这个文件夹写入东西的时间,也就是访问时间
 

DateTime dt=File.GetLastWriteTime(path);

三、读文件和写文件

1.读文件

(1)编码错误

返回来的是一个字符串数组。用for循环遍历文件中的内容,把里面的内容以一行一行的形式显示出来。但是在这里不加Encoding.Default,显示出来的内容会编码错误。

string path = @"E:\提高班\计算机\2   CS学习\02 C#\传智播客基础实训3\20121106C#基础\book.txt";
            string[] str = File.ReadAllLines(path);
            for (int i = 0; i <str.Length; i++)
            {
                Console.WriteLine(str[i]);
            }
          
            Console.WriteLine("哈哈,小杨又变帅了");
            Console.ReadKey();


(2)编码正确

与编码错误不同的就是在这里加了Encoding.Default,所以显示出来的内容是正确的。

string[] str = File.ReadAllLines(path,Encoding.Default );
        for (int i = 0; i <str.Length; i++)
         {
            Console.WriteLine(str[i]);
         }

(3)读出指定文件中的全部内容

string str = File.ReadAllText(path, Encoding.Default);
Console.WriteLine(str);

2.写文件

(1)把每一个数组作为一行数据放在文件中,把之前的覆盖掉。

string[] names = new string[] { "老牛", "老马", "老苏", "小月月", "春哥", "傻子" };
File.WriteAllLines(path, names);

(2)另一种方法

     把之前文件中的内容覆盖掉了,变成一行。

string[] names = new string[] { "老牛", "老马", "老苏", "小月月", "春哥", "傻子" };

File.WriteAllText(path, "哈哈,小张也变帅了",Encoding .UTF8 );

(3)追加,在上次的基础上通过for循环加入想要写的东西,追加多少次可以由自己设定。

 for (int i = 0; i < 5; i++)
            {               
                File.Create(path + "\\book" + i + ".txt");
            }

猜你喜欢

转载自blog.csdn.net/yyp0304Devin/article/details/84967892