C#读写文本文件(.txt)的方法实例
读取txt文件
如果你要读取的文件内容不是很多,可以使用 file.readalltext(filepath) 或指定编码方式 file.readalltext(filepath, encoding)的方法。它们都一次性将文本内容全部读完,并返回一个包含全部文本内容的字符串
也可以使用方法file.readalllines,该方法一次性读取文本内容的所有行,返回一个字符串数组,数组元素是每一行的内容
当文本的内容比较大时,我们就不要将文本内容一次性读完,而应该采用流(stream)的方式来读取内容。
.net为我们封装了streamreader类,它旨在以一种特定的编码从字节流中读取字符。streamreader类的方法不是静态方法,所以要使用该类读取文件首先要实例化该类,在实例化时,要提供读取文件的路径。实例化streamreader类有很多种方式。下面我罗列出几种:
初始化完成之后,你可以每次读一行,也可以每次读一个字符 ,还可以每次读几个字符,甚至也可以一次将所有内容全部读完
使用完streamreader之后,不要忘记关闭它: sr.close();
假如我们需要一行一行的读,将整个文本文件读完,下面看一个完整的例子:
写入txt文件
写文件和读文件一样,如果你要写入的内容不是很多,可以使用file.writealltext方法来一次将内容全部写如文件。如果你要将一个字符串的内容写入文件,可以用file.writealltext(filepath) 或指定编码方式 file.writealltext(filepath, encoding)方法
如果你有一个字符串数组,你要把数组的每一个元素作为一行写入文件中,可以用file.writealllines方法
使用file.writealltext或file.writealllines方法时,如果指定的文件路径不存在,会创建一个新文件;如果文件已经存在,则会覆盖原文件
当要写入的内容比较多时,同样也要使用流(stream)的方式写入
.net为我们封装了streamwriter类,它以一种特定的编码向字节流中写入字符。streamwriter类的方法同样也不是静态方法,所以要使用该类写入文件首先要实例化该类,实例化streamwriter类同样有很多方式:
初始化完成后,可以用streamwriter对象一次写入一行,一个字符,一个字符数组,甚至一个字符数组的一部分
同样,streamwriter对象使用完后,不要忘记关闭。sw.close(); 最后来看一个完整的使用streamwriter一次写入一行的例子:
总结
到此这篇关于c#读写文本文件(.txt)的文章就介绍到这了,更多相关c#读写txt文本文件内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
上一篇: 详解c# 事件总线