c# - 在 C# 中写入和读取文件的问题
问题描述
我的代码是:
StreamReader r = new StreamReader("temp.txt");
string str = r.ReadLine();
Console.WriteLine(str);
StreamWriter w = new StreamWriter("temp.txt");
w.WriteLine("new text");
str = r.ReadLine();
Console.WriteLine(str);
当我运行它时,它会引发未处理的异常并且无法访问该文件。我确定文件的路径是正确的并且没有写保护。
解决方案
该文件已被锁定,因为它正在使用中。同时读取和写入同一个文件是不好的。将流读取器/写入器包装在using
块中,以便正确关闭和释放流:
string str;
using (var r = new StreamReader("temp.txt"))
{
str = r.ReadLine();
Console.WriteLine(str);
}
using (var w = new StreamWriter("temp.txt"))
{
w.WriteLine("new text");
}
using (var r = new StreamReader("temp.txt"))
{
str = r.ReadLine();
Console.WriteLine(str);
}
推荐阅读
- python-3.x - 如何在 Windows 上安装 TensorFlow
- c# - .NetCore 3 和 UWP 进程之间的双向通信
- javascript - MVC javascript ajax 调用导致 xmlhttprequest 警告
- python - 通过 urls.py 中的 PK 过滤 django rest 框架视图时,API 视图为空
- google-analytics - 为什么 Google Analytics(分析)报告中的一个页面会显示多个页面标题?
- java - Apache Camel Rest - 如何将请求和响应从上一个端点发送到下一个端点
- javascript - Javascript getmouse
- json - 在swift 4中保存并加载复杂的结构(可编码)到本地文件 - Xcode
- python - 查找对数表示矩阵的特征值
- python - 使用什么模型进行销售预测?