C#对文件的操作

C#对文件的操作方式有两种: 1、通过File类对文件进行操作; 2、通过文件流对文件进行操作


File类是一个静态类(因此可以直接使用类名去调用方法),有以下方法对文件进行操作:

1、Exist(): 判断指定路径下的文件是否存在,形参为指定路径,存在则返回true , 不存在则返回false;

2、Move(): 将原来路径的文件移动到指定路径下,形参1为原路径,形参2为新路径,返回空;

3、Copy(): 将现有的文件复制到新文件中(不允许覆盖同名文件),形参1为需要复制的文件,形参2为复制到的文件,返回空;

4、Delete(): 删除指定目录下的文件,形参为指定的目录;

5、Creat(): 在指定路径下创建或覆盖文件;

6、ReadAllLines() ; ReadAllText() ; ReadAllBytes(); 这三个方法都能够将文件的数据读出来,区别就是前两个只能读文本文件,最后一个能够读任意文件,形参1均为文件路径,形参2为读文件所需的编码格式,一次返回一个字符串数组,返回一个字符串,返回一个字节数组. 如果需要通过输出字节数组中的字符串数据那么需要使用 System.Text.Encoding.Default.GetString( 字节数组 );就能够将字节数组转换为字符串;

7、WriteAllLines() ; WriteAllText() ; WriteAllBytes(); 这三个方法都能够将数据写入文件,区别就是前两个只能操作文本文件,最后一个能够操作任意文件,形参1均为文件路径,形参2依次为所要写入的字符串数组,所要写入的字符串,所要写入的字节数组,对于字节数组的转换与第6点中提到的类似,这三种方法都会覆盖原文件的数据;

8、若不需要覆盖原文件的内容则可以使用AppendAllLines()或者AppendAllText(),形参1均为文件路径,形参2为需要追加的内容;


File类虽然能够操作文件,但是它的缺点是它的操作是一次性完成的,就是说,它会将需要操作的文件数据整体进行操作,例如将文件a移动到某一指定路径,这时当文件a非常大的时候,操作就会很难完成,将会耗费很大的内存以及时间.因此需要引入文件流进行对大文件的操作,那么文件流在以后的篇章中再讨论.


与File类相类似的两个类为Directory类和Path类,为什么说他们相似呢,因为Directory类和Path类前者是操作文件夹的,而后者是操作文件路径,并且它们两个都是静态类.


Directory类常用方法:

1、Directory.GetFiles( 文件名,(文件类型筛选),(是否搜索子目录) ),返回那个路径

2、Directory.CreatDirectory( 创建文件夹所在的路径 ),没有返回值

3、Directory.move( 需要移动的文件夹的原路径,需要移动的新路径 ),没有返回值


Path类常用方法:

1、Path.GetileName( 路径字符串 )//获取文件名,(Path类最常用的方法)

2、Path.GetFileNameWithoutExtension( 路径字符串 ) //仅获取文件名,不获取扩展名(houzhui)

3、Path.GetDirectionName( 路径字符串 )//获取文件所在文件夹的名字

注意Path类的方法只能是对文件路径那个字符串进行操作,不能从本质上改变文件的存储位置.


绝对路径: 就是文件所存储的路径能够在本机上按着这个路径找到,那么这个路径就成为绝对路径; 

相对路径: 就是文件的存储位置相对于使用它的应用程序所在的目录,一般讲应用程序所需的文件都放在同一文件夹中(那么,在实际开发中就会比较方便,因为用户的电脑可能没有程序运行所需要的文件);

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值