【发布时间】:2015-02-21 12:26:54
【问题描述】:
我正在尝试通过使用 c# 添加新的子节点来更新现有的 XML 文件。 如果我用新名称保存它,一切都很好,但我想更新同一个文件,并且在执行此操作时出现以下异常:
System.IO.IOException:进程无法访问文件...因为它是 正在被另一个进程使用
这是我的代码:(我正在尝试添加一个新的默认节点)
XmlDocument doc = new XmlDocument();
string path = @"C:\Debug\default.xml";
doc.Load(path);
XmlNode NName = doc.CreateElement("default");
XmlNode SNO = doc.CreateElement("SNo");
SNO.InnerText = "2";
NName.AppendChild(SNO);
doc.DocumentElement.AppendChild(NName);
doc.Save(path);
还有 XML 文件:
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<default>
<SNo>1</SNo>
</default>
</NewDataSet>
【问题讨论】:
-
因为它正被另一个进程使用这对你没有任何意义?
-
“因为它正被另一个进程使用” - 好吧,is it?
-
确保您没有在其他地方打开此 xml 文件(例如在浏览器中查看)
-
@david 是的,我知道该文件正在被同一进程用于创建节点,但现在如何解决这个问题?
-
它表示它已被另一个进程使用,因此您要么在当前代码之外的其他地方打开它。
标签: c# xml ioexception