C# 如何读取和写入文本文件_C# 文本文件读写操作指南

答案:C#中读写文本文件常用File.ReadAllText/WriteAllText处理小文件,ReadAllLines/WriteAllLines按行操作,大文件推荐StreamReader/StreamWriter流式处理,并可指定编码如UTF8、GBK,根据文件大小和需求选择合适方法。

c# 如何读取和写入文本文件_c# 文本文件读写操作指南

C# 提供了多种方式来读取和写入文本文件,操作简单且高效。无论是处理配置文件、日志记录还是数据存储,掌握基本的文件读写方法是开发中的必备技能。下面介绍常用的方法和实际用法。

使用 File.ReadAllText 和 File.WriteAllText 读写整个文件

当你需要一次性读取或写入整个文本内容时,File.ReadAllTextFile.WriteAllText 是最简单的选择。

示例:

// 读取整个文本文件string content = File.ReadAllText("example.txt");Console.WriteLine(content);// 写入文本(会覆盖原文件)File.WriteAllText("example.txt", "这是新写入的内容");

这些方法适用于小文件,因为它们会将全部内容加载到内存中。

使用 File.ReadAllLines 和 File.WriteAllLines 按行操作

如果文件内容按行组织,可以使用 ReadAllLines 读取为字符串数组,或用 WriteAllLines 写入字符串数组。

// 读取所有行string[] lines = File.ReadAllLines("example.txt");foreach (string line in lines){    Console.WriteLine(line);}// 写入多行string[] newLines = { "第一行", "第二行", "第三行" };File.WriteAllLines("example.txt", newLines);

这种方式适合处理结构清晰的文本数据,比如 CSV 或日志条目。

使用 StreamReader 和 StreamWriter 处理大文件或流式操作

对于大文件或需要逐行读写的情况,推荐使用 StreamReaderStreamWriter,它们支持流式处理,节省内存。

// 逐行读取using (StreamReader reader = new StreamReader("example.txt")){    string line;    while ((line = reader.ReadLine()) != null)    {        Console.WriteLine(line);    }}// 写入并追加内容using (StreamWriter writer = new StreamWriter("example.txt", true)){    writer.WriteLine("新增的一行");}

注意第二个参数 true 表示追加模式,不传则默认覆盖。

编码问题处理

默认情况下,某些方法使用 UTF-8 编码。如果文件使用其他编码(如 GBK、ASCII),需显式指定。

// 指定编码读取string content = File.ReadAllText("example.txt", Encoding.GetEncoding("GBK"));// 指定编码写入File.WriteAllText("example.txt", "中文内容", Encoding.UTF8);

常见编码类型:UTF8、Unicode、ASCII、GB2312/GBK 等,根据实际需求选择。

基本上就这些。选择合适的方法取决于文件大小、操作频率和是否需要追加等需求。小文件用静态方法方便,大文件用流更安全。

以上就是C# 如何读取和写入文本文件_C# 文本文件读写操作指南的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1441362.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月17日 18:00:23
下一篇 2025年12月17日 18:00:42

相关推荐

发表回复

登录后才能评论
关注微信