You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用StreamReader/Writer清空Unity中C#项目的TXT文件?

可行,以下是两种实用实现方式

方法1:用File.WriteAllText(最简洁)

直接向目标文件写入空字符串,会自动覆盖并清空所有内容:

using System.IO;
using UnityEngine;

public class FileHandler : MonoBehaviour
{
    public void ClearTargetTxt()
    {
        // 替换为你的文件实际路径,优先用Unity提供的合法可写路径
        string filePath = Path.Combine(Application.PersistentDataPath, "yourFile.txt");
        
        // 写入空字符串完成清空
        File.WriteAllText(filePath, string.Empty);
    }
}

方法2:延续StreamWriter的使用习惯

如果想沿用之前的StreamWriter操作,可以通过指定文件模式来清空:

using System.IO;
using UnityEngine;

public class FileHandler : MonoBehaviour
{
    public void ClearTargetTxt()
    {
        string filePath = Path.Combine(Application.PersistentDataPath, "yourFile.txt");
        
        // 方式1:传入false参数,覆盖现有内容(等同于清空)
        using (StreamWriter writer = new StreamWriter(filePath, false)) { }
        
        // 方式2:明确指定FileMode.Truncate,直接截断文件内容
        using (StreamWriter writer = new StreamWriter(new FileStream(filePath, FileMode.Truncate))) { }
    }
}

关键注意点

  • 路径合法性:Unity的Resources目录是只读的,无法直接修改其中的文件。如果你的TXT文件在Resources下,需要先将文件复制到Application.PersistentDataPath(可写目录)再执行清空操作。
  • 资源释放:必须用using语句包裹文件流对象,确保文件被正确关闭,避免后续操作因文件被占用失败。

内容的提问来源于stack exchange,提问作者DatBubby

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 09:57:38