前言:
我们在开发c#程序时,经常需要对txt文本文件进行操作,有时候是读取txt文本中的内容,有时候是将程序运行过程中的一些数据写入到txt文本中做记录,为了帮助大家学习txt文本的操作,我特意开发了一个“txt文件操作学习”winform小软件,该软件调用了我封装的txt文件操作类TxtFileOperate,并且具备覆盖旧文本写入新文本到txt、追加内容到txt、写入指定编码格式的文本到txt、读取整个txt、读取txt所有行、读取指定编码格式的文本等内容,帮您一网打尽c#txt文本操作的所有知识点,上图就是我开发的“txt文件操作学习”软件,下面围绕这个软件的功能,详细介绍如何利用C#对txt文件进行操作:
1、txt文件写入操作
1.1 使用默认编码覆盖原txt文件
在数据写入区,输入“123中国人”,写入类型选择“覆盖原文件”,点击“默认编码写入”,可以看到在软件运行目录下产生了一个“write.txt”的文本,并且打开txt文本后,里面出现了“123中国人”,说明成功将文本“123中国人”写入了write.txt文件中。
并且本小节我称之为“覆盖原文件”,这是什么意思呢?就是每次将文本写入txt的时候,如果这个txt文件不存在则创建一个新文件,并且将文本写入txt文件中;如果这个文件存在,则将之前原文件中的内容删除,用新的文本内容替换,所以当我反复点击按钮“覆盖原文件”时,每次这个txt文件中只存储本次写入的文本内容,与之相关的C#代码如下图:
1.2 使用默认编码追加文本到txt文件
在上一节中我介绍了“覆盖原文件”的操作,但是有的时候我需要将文本内容不断地追加写入到一个txt文件中,这时候上一节中的覆盖写入的方法就不行了,这时候就需要使用新的追加文本到txt中的方法,在数据写入区,输入“456”,写入类型选择“追加”,点击“默认编码写入”,并且点击两次,可以看到在软件运行目录下产生了一个“write.txt”的文本,并且打开txt文本后,里面出现了“456456”,说明第二次写入的时候,成功将“456”追加写入到了write.txt文件中。
与之相关的C#代码如下:并且其实实现追加还是覆盖的功能核心在于下图中创建StreamWriter对象时的第二个参数是传入true还是false,如果是true则为追加,如果是false则为覆盖。