我有一段 C# 代码,它将 Itunes 当前播放的曲目信息保存到 XML 文件中。这段代码在一段时间内工作正常,但通常会在 myXmlDocument.Save(ClsUtils.XmlPath); 上给出错误“进程无法访问 xml 文件,因为它正被另一个进程 c# 使用”。
任何人都可以建议这里可能出了什么问题......
以下是一段代码
public void ModifyLastTrack(bool bOnlyPlayerPosition)
{
//initilize XML Document
XmlDocument myXmlDocument = new XmlDocument();
//load Xml into document
myXmlDocument.Load(ClsUtils.XmlPath);
//get Node for modify if Checked state Changed
XmlNode DictLastTrackNode;
DictLastTrackNode = myXmlDocument.DocumentElement;
foreach (XmlNode ChildDictNode1 in DictLastTrackNode.ChildNodes)
{
foreach (XmlNode ChildDictNode2 in ChildDictNode1.ChildNodes)
{
if (!bOnlyPlayerPosition)
{
if (ChildDictNode2.Name == "TrackID")
ChildDictNode2.InnerText = TrackID;
}
else
{
if (ChildDictNode2.Name == "PlayerPosition")
ChildDictNode2.InnerText = PlayerPosition.ToString();
}
}
}
//save Xml after modification
myXmlDocument.Save(ClsUtils.XmlPath);
}