【发布时间】:2014-10-18 21:41:59
【问题描述】:
所以我正在这样做:
public MainWindow()
{
InitializeComponent();
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = "F:\\Scoreboard Assistant\\output\\";
watcher.Filter = "event.xml";
watcher.NotifyFilter=NotifyFilters.LastWrite;
watcher.Changed += new FileSystemEventHandler(file_Changed);
watcher.EnableRaisingEvents = true;
}
private void file_Changed(object sender, FileSystemEventArgs e)
{
XmlDocument config = new XmlDocument();
config.Load(e.FullPath.ToString());
string text1 = config.SelectSingleNode("event/text1").InnerText;
string text2 = config.SelectSingleNode("event/text2").InnerText;
}
我正在做的是观察对特定 XML 文件的更改。然后,如果检测到文件发生更改,它将读取 XML 文件并从中提取变量。但是,当我运行代码时,出现以下错误:
System.Xml.dll 中出现“System.IO.IOException”类型的未处理异常
附加信息:该进程无法访问文件“F:\Scoreboard Assistant\output\event.xml”,因为它正被另一个进程使用。
我该如何解决这个问题?
【问题讨论】:
标签: c# filesystemwatcher