应用程序仍然说文件打开并显示错误

时间:2017-03-03 23:06:26

标签: c# winforms

我有一个txt文件,在加载表单时加载到列表框中。我试图让这个按钮添加到文本文件。它说文件仍然是打开的。有没有办法让我将这个选中文件的路径添加到列表框即使打开也是如此。我不确定如何关闭它。我被告知它会自动完成它。

{{1}}

2 个答案:

答案 0 :(得分:2)

StreamWriter file2 = new StreamWriter("Shortcut_Items.txt", true);
// ...
File.AppendAllText(path, appendText);

当然,文件已打开。您创建一个StreamWriter,打开该文件进行写入。然后 - 完全独立于StreamWriter - 使用File.AppendAllText打开文件以再次编写

完全摆脱您的StreamWriter代码。如果你正在使用File.AppendAllText,那么你不需要一个StreamWriter - File.AppendAllText是自包含的。

答案 1 :(得分:1)

您永远不会关闭该文件。我会建议使用'语句将自动为您关闭文件。

替换代码的这一部分:

StreamWriter file2 = new StreamWriter("Shortcut_Items.txt", true);
string path = "Shortcut_Items.txt";
string appendText = Environment.NewLine + tempPath + Environment.NewLine;
File.AppendAllText(path, appendText);

有了这个:

using(StreamWriter file2 = new StreamWriter("Shortcut_Items.txt", true))
{
  //Do whatever you're going to do with the file
}

string path = "Shortcut_Items.txt";
string appendText = Environment.NewLine + tempPath + Environment.NewLine;
File.AppendAllText(path, appendText);