如何删除文本文件内容,修改文本框内容时同步更新文件内容的方法
问题原因
当前代码中StreamWriter构造函数的第二个参数append设为true,代表写入时会向文件末尾追加新内容,不会清除原有内容,是无法覆盖旧行的核心原因。
解决方案
最简实现(推荐)
直接调用.NET封装的File.WriteAllText方法,无需手动判断文件存在状态、管理流生命周期,完全匹配需求:
- 文件不存在时自动创建
- 文件存在时直接覆盖所有原有内容
- 自动处理流的开闭、资源释放
string path = "file.txt"; string text = txtText.Text; File.WriteAllText(path, text);
StreamWriter 写法兼容
如果需要保留StreamWriter的实现方式,仅需将append参数修改为false即可,同时建议使用using语法自动释放资源,避免文件锁异常:
string path = "file.txt"; string text = txtText.Text; using (StreamWriter sw = new StreamWriter(path, false)) { sw.WriteLine(text); }
内容的提问来源于stack exchange,提问作者Kacper Wojtkiel
相关产品推荐
相关产品推荐

