C# 文件操作:读取与写入文本文件

简介: `File`类提供文件操作静态方法,适合快速读写;大文件推荐使用`StreamReader/StreamWriter`以降低内存占用。示例展示了文本文件的写入、追加与读取操作,支持自动创建目录,建议处理路径时注意权限并优先使用相对路径。

File 类提供静态方法快速操作文件,StreamReader/StreamWriter 适合大文件读写,避免内存占用过高。

案例:文本文件工具

using System.IO;
public class FileHelper
{
    // 写入文本文件(覆盖模式)
    public static void WriteText(string filePath, string content)
    {
        // 确保目录存在
        string directory = Path.GetDirectoryName(filePath);
        if (!Directory.Exists(directory))
        {
            Directory.CreateDirectory(directory);
        }
        File.WriteAllText(filePath, content, System.Text.Encoding.UTF8);
    }
    // 读取文本文件
    public static string ReadText(string filePath)
    {
        if (!File.Exists(filePath)) return "";
        return File.ReadAllText(filePath, System.Text.Encoding.UTF8);
    }
    // 追加文本到文件
    public static void AppendText(string filePath, string content)
    {
        File.AppendAllText(filePath, content + Environment.NewLine, System.Text.Encoding.UTF8);
    }
}
// 调用示例
string filePath = @"C:\Temp\Test.txt";
// 写入文件
FileHelper.WriteText(filePath, "第一行内容:学习C#文件操作");
// 追加内容
FileHelper.AppendText(filePath, "第二行内容:简单又实用");
// 读取文件
string content = FileHelper.ReadText(filePath);
Console.WriteLine("文件内容:");
Console.WriteLine(content);
// 输出:
// 第一行内容:学习C#文件操作
// 第二行内容:简单又实用
注意:文件路径需处理权限问题,建议使用相对路径或配置文件存储路径。


相关文章
|
编解码 程序员 atlas
Unity 之 图集属性详解和代码示例 -- 拓展一键自动打包图集工具
图集只是当所有给低昂的纹理需要相同的着色器时采用的一种方法,如果一些纹理需要通过着色器应用独立的图形效果,它们就必须分离到自己的材质中,并在单独的组中打图集。
2386 0
Unity 之 图集属性详解和代码示例 -- 拓展一键自动打包图集工具
|
2天前
|
缓存 安全 C#
C# 实现简单的缓存工具类
基于Dictionary实现线程安全的内存缓存,支持设置过期时间,自动清理过期项。同时提供枚举转键值对列表工具,便于下拉框数据绑定,提升开发效率。
|
2天前
|
开发框架 .NET Java
C# LINQ:简化集合查询(基础用法)
LINQ是C#中集成的查询功能,可简洁高效地查询集合、数据库等数据源。通过示例演示了过滤、排序、分组、投影和聚合操作,展现其在处理产品列表时的强大与便捷。
|
2天前
|
C#
C# 实现简单的二维码生成工具
基于 ZXing.Net 库生成二维码,支持自定义尺寸与保存路径,使用简便,需先安装对应 NuGet 包。
|
2天前
|
C#
C# 实现简单的定时任务工具
基于 `System.Timers.Timer` 实现定时任务,支持周期性与单次执行。通过封装 Timer 类,提供启动、停止功能,并包含异常处理,确保任务稳定运行,适用于后台定时操作场景。
|
2天前
|
C#
C# 实现发送邮件功能(SMTP)
通过SMTP协议实现邮件发送,支持文本与附件,需配置邮箱SMTP信息(如QQ邮箱授权码)。示例代码展示C#中如何使用SmtpClient发送邮件,适用于QQ、163、Gmail等主流邮箱服务。
|
2天前
|
JSON C# 数据格式
C# 实现简单的 HTTP 请求工具(POST 补充)
该代码实现了一个基于 HttpClient 的异步 HTTP POST 请求工具类,支持以 JSON 格式提交数据并反序列化响应结果,具备异常处理机制,适用于 .NET 环境下的轻量级网络请求操作。
|
2天前
|
C#
C# 异常处理:try-catch-finally 避免程序崩溃
异常处理用于捕获运行时错误(如空引用、文件不存在),确保程序稳定。通过 `try` 包裹可能出错的代码,`catch` 捕获并处理异常,`finally` 确保资源释放等操作始终执行,提升代码健壮性。
|
2天前
|
C# 数据安全/隐私保护
C# 正则表达式:快速匹配与验证
正则表达式用于字符串模式匹配,如手机号、邮箱、密码验证等。C# 通过 `System.Text.RegularExpressions` 命名空间中的 `Regex` 类实现。本文示例展示了使用 `RegexHelper` 工具类进行常见验证:`IsPhoneNumber` 验证中国大陆手机号(1开头,共11位);`IsEmail` 校验邮箱格式;`IsValidPassword` 判断密码是否包含字母和数字且长度为8-20位;`ExtractNumbers` 提取字符串中所有数字。代码简洁高效,适用于数据校验与文本处理场景。
|
2天前
|
安全 C# 数据安全/隐私保护
C# 实现验证码 + 登录的整合案例
整合图形验证码与用户登录功能,实现安全的登录验证流程。系统生成验证码图片并校验输入,结合用户名密码双重验证,提升账户安全性,有效防止自动化攻击。