小Q的博客

  • 首页
  • net编程
    • 产品和框架
    • 开发实例
    • 经验技巧
    • 开源组件
  • wp独立站
  • 自媒体
  • 日记本
  • 工具箱
每个程序员,都应该有一个自己的博客站
  1. 首页
  2. net编程
  3. 经验技巧
  4. 正文

net中c#教程 file文件的常用操作

2022年10月8日 1434点热度 0人点赞 0条评论

net中C#的File文件类操作,涉及的功能点其实不多,就是读取和写入文件,而且一般是txt文本文件居多。如果想对其他文件操作,就要用到第三方类库,微软原生的类效果都不好,这个放到后面再讲。这次主要分享对txt文件的操作

Table of Contents

Toggle
  • 1、读取文件内容
  • 2、读取文件内容2
  • 3、写入文件内容
  • 4、File和Base64互转
  • 5、Stream、Byte[]和File互转
  • 6、获取指定扩展名的文件列表
  • 7、递归删除文件夹

1、读取文件内容

其实用File.ReadAllText就可以实现,只是其中一个参数不太好确定,就是Encoding,要知道它的编码才可以。其实可以根据文件的二进制流获取到编码的

//1,读取文件
string file1 = @"d:\codes.txt";
Encoding encoding = FileHelper.GetFileEncoding(file1);
string fileData = FileHelper.ReadFileByText(file1, encoding);

 

2、读取文件内容2

这个是将文件内容按行分隔,直接返回Array数组。有的场景会用上,就一并实现了

//2,读取文件,转为List
List<string> lines = FileHelper.ReadFileByTextToLine(file1, encoding);

 

3、写入文件内容

写入文件内容,要注意AppendAllText和WriteAllText这2个方法的区别。一个是追加数据、一个是重写数据(会覆盖原内容)

//3,写入文件
string file2 = @"d:\codes2.txt";
string fileData2 = "我是中国人";
FileHelper.WriteFileToText(file2, fileData2, Encoding.UTF8, false);

 

4、File和Base64互转

不光图片文件能转成Base64,文本文件也可以

//4,File和Base64互转
string fileBase64 = FileHelper.GetBase64ByFile(file1);
string file3 = @"d:\codes3.txt";
FileHelper.GetFileByBase64(fileBase64, file3);

 

5、Stream、Byte[]和File互转

这个场景应该也很广,直接上代码

//5,Stream、Byte[]和File互转
byte[] fileBytes = FileHelper.ReadFileToByte(file1);
Stream fs = FileHelper.BytesToStream(fileBytes);
FileHelper.StreamToFile(fs, @"d:\codes4.txt");

 

6、获取指定扩展名的文件列表

//6,获取指定扩展名的文件列表
List<string> listFileExt = new List<string>() { "png", "jpg", "jpeg" };
List<FileInfo> listFi = FileHelper.GetListFileByFolder(@"d:\imageFile", listFileExt);

 

7、递归删除文件夹

//7,递归删除文件夹
FileHelper.DeleteFolder(@"d:\tempFile");

 

相关阅读

net中c#教程 Json字符串的常用操作

net中c#教程 DataTable的常用操作

net中c#教程 DateTime日期时间的常用操作

net中c#教程 list泛型的常用操作

net中c#教程 string字符串的常用操作

标签: c#教程 net教程 文件操作
最后更新:2022年10月15日

小Q

80后中年不油腻大叔,喜欢编写代码、打羽毛球、做木制玩具。目前定居浙江杭州

打赏 点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2022 小Q的博客. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

浙ICP备2022019157号-2