我在WPF应用程序中工作,我想创建一个XML文件并在Window中同时加载它。 现在我的代码工作正常,但是当我想在Window中加载创建的文件时,它告诉我另一个进程使用的文件。 这是我的代码
var now = DateTime.Now;
var timestamp = "" + now.Hour + now.Minute + now.Second;
string sb = "test";
var path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
File.WriteAllText(string.Format("{0}\\{1}.xml", path, timestamp), sb);
File.AppendText(string.Format("{0}\\{1}.xml", path, timestamp));
XmlDocument XMLdoc = new XmlDocument();
try
{
XMLdoc.Load(string.Format("{0}\\{1}.biml", path, timestamp));
}
catch (XmlException)
{
MessageBox.Show("The XML file is invalid");
return;
}
vXMLViwer.xmlDocument = XMLdoc;
答案 0 :(得分:5)
File.AppendText
会打开文件并返回一个可用于追加数据的流。由于您没有使用此方法的返回值,这意味着在垃圾收集器决定稍后启动之前,您不会关闭该流。
目前尚不清楚你要对File.AppendText
做什么(也许你根本不需要它?)。但是,如果要打开文件,附加一些文本,然后关闭它,那么您应该使用File.AppendAllText
代替。