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

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: `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 之 图集属性详解和代码示例 -- 拓展一键自动打包图集工具
图集只是当所有给低昂的纹理需要相同的着色器时采用的一种方法,如果一些纹理需要通过着色器应用独立的图形效果,它们就必须分离到自己的材质中,并在单独的组中打图集。
2760 0
Unity 之 图集属性详解和代码示例 -- 拓展一键自动打包图集工具
|
3月前
|
存储 弹性计算 人工智能
阿里云服务器99元和199元专属活动解析:新购续费政策解读与99套餐配置和价格参考
99计划活动是阿里云的99元和199元云服务器专属活动,活动内经济型e(ecs.e-c1m1.large)实例2核2G3M带宽 40G ESSD Entry云盘特惠价99元1年,通用算力型u1实例(ecs.u1-c1m2.large)2核4G5M带宽80G ESSD Entry云盘特惠价199元1年,且新购和续费同价。除了价格非常实惠之外,从目前已公布的活动内容来看,用户还可以选择99套餐专属优惠,例如立享建站礼包、加99元解锁弹性数据库、加99元享高效存储保障、加36元防护主机安全等,下面是具体新购续费政策和套餐配置及价格及购买规则介绍。
1146 11
|
3月前
|
SQL 数据库 数据安全/隐私保护
手把手教你安装 SQLServer2014-x64-CHS附详细文步骤与避坑指南
下载解压SQL Server 2014安装包至根目录(路径勿含中文),断网后以管理员身份运行setup.exe。选择评估版,接受协议,勾选数据库引擎、管理工具等核心功能,设置混合验证模式并配置sa密码,将服务设为自动启动。安装完成后检查服务状态,确认“SQL Server (MSSQLSERVER)”正在运行即可使用。(238字)
1240 2
|
10月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
526 18
|
安全 Java C#
Unity多线程使用(线程池)
在C#中使用线程池需引用`System.Threading`。创建单个线程时,务必在Unity程序停止前关闭线程(如使用`Thread.Abort()`),否则可能导致崩溃。示例代码展示了如何创建和管理线程,确保在线程中执行任务并在主线程中处理结果。完整代码包括线程池队列、主线程检查及线程安全的操作队列管理,确保多线程操作的稳定性和安全性。
|
存储 算法 API
Unity打包AB包
在 Unity 中,AssetBundle(AB 包)用于存储和管理游戏资源,支持动态加载。开发者需为资源标记 AssetBundle 名称,Unity 会自动处理依赖关系并进行序列化。资源被打包成二进制格式,并可选择压缩算法(如 LZMA 或 LZ4)。通过 BuildPipeline API 可控制打包过程,包括设置目标平台(如 WebGL、PC)。示例代码展示了如何使用 BuildPipeline.BuildAssetBundles 方法打包 AB 包并输出到 StreamingAssets 文件夹中。