C#利用File方法对文件的操作总结(字节写入和读取)

作者:小马的棺材板 时间:2022-07-20 09:30:55 

C#文件的读和写提供了非常多的方法基本一两行就可以搞定“读和写”,在编程里还是比较重要的

什么是读?

你的程序去读你磁盘里的文件

上面是写?

你的程序在你磁盘创建文件

有什么用?

可以保存数据,用户等2次打开时就不用重新加载,或者软件异常,把异常信息或日志信息等进行保存

@符作用:

路径使用是字符串类型,而路径有非常多的“ \”

而如\n表示的是换行,为了不让这些“\”起到转义的意思

在路径前使用@表示这字符串并不需要其转义

所以写路径必须得在前面加@符号,或者使用

两个“\\”代替 如:““E:\\1.txt””

如果路径特别长…不建议这样(简直就是脑血栓)

创建文件:

在E盘创建了一个名为1.txt的文本文件


File.Create(@"E:\1.txt");

C#利用File方法对文件的操作总结(字节写入和读取)

创建成功

删除文件:

删除E盘下的1.txt文件


File.Delete(@"1.txt");

判断文件是否存在:

返回的是一个布尔值


bool a = File.Exists(@"E:\1.txt");

true 为存在

false 为不存在

和英语考试的判断题一样,对就T 错的就F…

C#利用File方法对文件的操作总结(字节写入和读取)

上面把他删了,所以就不存在,false

也可以这样写:


if (File.Exists(@"D:\1.txt"))
{
 Console.Write("文件存在");
 }
 else {
Console.Write("文件不存在");
}

复制文件:

C#利用File方法对文件的操作总结(字节写入和读取)

把学习资料从E盘复制到D盘


File.Copy(@"E:\学习资料.zip",@"D:\学习资料.zip");

C#利用File方法对文件的操作总结(字节写入和读取)

复制成功

移动文件:

所谓的移动也就是剪切的意思


 File.Move(@"D:\1.txt", @"E:\1.txt");

D盘剪切到E盘

C#利用File方法对文件的操作总结(字节写入和读取)

成功

写入:

C#提供了很多的写入方法,

都大同小异都写入的方式不一样而已

WriteAllText:直接写入


File.WriteAllText(@"E:\1.txt","6666");

把6666写入到E盘的1.txt里

C#利用File方法对文件的操作总结(字节写入和读取)

注意:如果文件不存在就自动创建并且写入,还是比较方便的只有一行

WriteAllBytes:字节形式写入


 string str = "小马哥的棺材板";
 //创建写入的字符串
byte[] a = Encoding.Default.GetBytes(str);
//字符串转成字节
File.WriteAllBytes(@"E:\1.txt",a);
//写入

Encoding:表示编码格式

Default:默认编码

GetBytes:转成字节

C#利用File方法对文件的操作总结(字节写入和读取)

写入成功!!

WriteAllLines:行的形式写入

C#利用File方法对文件的操作总结(字节写入和读取)

需要注意的是第2个参数是一个字符串类型的数组


string[] a  = { "1","2","3","4","5"};
File.WriteAllLines(@"E:\1.txt",a);

写入成功

C#利用File方法对文件的操作总结(字节写入和读取)

AppendAllText:追加写入

上面的方法都是覆盖的写入,一般写日志文件都是使用追加写入

这样就不会覆盖了

原文本内容:

C#利用File方法对文件的操作总结(字节写入和读取)


File.AppendAllText(@"E:\1.txt", "6666");

追加写入后:

C#利用File方法对文件的操作总结(字节写入和读取)

可以注意到并没有换行,如果数据多了不好看

可以使用转义符进行换行


File.AppendAllText(@"E:\1.txt", "6666"+"\r\n");

效果:

C#利用File方法对文件的操作总结(字节写入和读取)

居然可以写入文件当然也可以读取

读取:

Encoding:表示编码格式

Default:默认编码

ReadAllText:读取文本:


string str = File.ReadAllText(@"E:\1.txt", Encoding.Default);
Console.WriteLine(str);            

C#利用File方法对文件的操作总结(字节写入和读取)

读取成功!!

ReadAllLines:行的方式读取


string[] str = File.ReadAllLines(@"E:\1.txt", Encoding.Default); //编码格式默认
for (int i = 0; i <= str.Length - 1; i++)
{
Console.WriteLine(str[i]);
}

C#利用File方法对文件的操作总结(字节写入和读取)

每一个元素代表一行

如果我只想拿到第一行的内容:


string[] str = File.ReadAllLines(@"E:\1.txt", Encoding.Default);              
Console.WriteLine(str[0]);        

C#利用File方法对文件的操作总结(字节写入和读取)

ReadAllBytes:字节形式读取


byte[] a = File.ReadAllBytes(@"E:\1.txt");
//读取文件转成字节
string str = Encoding.Default.GetString(a);
//把字节转成字符串
Console.WriteLine(str);

C#利用File方法对文件的操作总结(字节写入和读取)

来源:https://blog.csdn.net/dpc5201314/article/details/118914603

标签:c#,file,文件
0
投稿

猜你喜欢

  • 详解SpringBoot Start组件开发之记录接口日志信息

    2023-07-26 18:33:34
  • androidQ sd卡权限使用详解

    2021-09-27 17:38:51
  • string与stringbuilder两者的区别

    2021-11-26 00:01:06
  • java递归菜单树转换成pojo对象

    2022-08-12 04:04:40
  • C#/VB.NET实现将XML转为PDF

    2023-02-11 11:21:21
  • android编程之xml文件读取和写入方法

    2022-08-23 05:47:48
  • Android GridView实现滚动到指定位置的方法

    2021-08-29 10:04:21
  • 如何使用SpringSecurity保护程序安全

    2022-09-08 19:57:50
  • Java实现二分查找的变种

    2023-11-07 11:26:28
  • Android编程设计模式之访问者模式详解

    2021-07-11 08:39:38
  • java文件读写工具类分享

    2023-07-30 21:04:19
  • 基于SPRINGBOOT配置文件占位符过程解析

    2021-06-27 04:25:12
  • 关于Android中Gradle和jar包下载慢的问题及解决方法

    2022-08-29 00:50:21
  • InterProcessMutex实现zookeeper分布式锁原理

    2023-08-11 05:46:43
  • java Iterator.remove()实例方法分析

    2022-05-01 15:56:01
  • C#中的Linq Intersect与Except方法使用实例

    2021-11-30 01:25:52
  • Unity TextMeshPro实现富文本超链接默认字体追加字体

    2021-10-13 23:57:24
  • java基于swing实现的五子棋游戏代码

    2023-09-24 17:31:17
  • Android使用CardView实现圆角对话框

    2023-01-03 20:53:34
  • Java8 中的ParallelStream

    2022-09-07 19:00:23
  • asp之家 软件编程 m.aspxhome.com