如何测试结束标签是否可用:
例如
<A>
<n>
<r>
</r>
<b>
</b>
在上述情况下,我缺少了</A>
结束</n>
标签。
我该如何检查?
代码:
try
{
XmlDocument xdoc = new XmlDocument();
xdoc.LoadXml(FileName);
}
catch (XmlException xe)
{
XmlDocument xdoc = new XmlDocument();
xdoc.LoadXml(FileName);
xdoc.AppendChild(xdoc.CreateElement("/n"));
xdoc.AppendChild(xdoc.CreateElement("/A"));
}
但这给了我一个例外:根目录下的数据无效。xml 缺少 /n 和 /A 的结束标记。请指教。
编辑2:
try
{
XmlDocument xdoc = new XmlDocument();
xdoc.LoadXml(FileName);
}
catch (XmlException xe)
{
using (StreamWriter w = File.AppendText(FileName))
{
w.WriteLine("</n>");
w.WriteLine("</A>");
}
}
现在使用 Edit 2,它会使用缺少的标签更正文件名。但是,如果 xml 已经可用,它仍然会进入另一个标签 /n /A 并给我一个例外:意外的结束标签。