XDocument异常:根元素丢失
本文关键字:元素 异常 XDocument | 更新日期: 2023-09-27 18:15:41
我有一个简单的XML文件:
<?xml version="1.0" encoding="utf-8" ?>
<Config>
<NumOfBytesInRow>20</NumOfBytesInRow>
<FirstBaudRate>115200</FirstBaudRate>
<SecondBaudRate>34800</SecondBaudRate>
<DefaultPort>COM1</DefaultPort>
<NumOfTries>2</NumOfTries>
</Config>
我试图获取元素,但一旦我打开文件,我得到一个异常,根元素缺失
XDocument doc = new XmlDocument();
doc.Load(path);
编辑
我添加了:
if(File.Exists("D:''BBConfig.xml"))
加载前找到了文件,仍然出现相同的错误
首先,我发现user3890766的答案非常好:"如果方法找不到文件,可能会抛出此异常"。尽管如此,你还是可以试试这个:
string strXml;
try
{
using (StreamReader sr = new StreamReader("myXML.xml"))
{
strXml = sr.ReadToEnd();
}
XmlDocument doc = new XmlDocument();
doc.LoadXml(strXml);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
如果方法找不到文件,则可能引发此异常。您需要检查您的应用程序是否可以在给定的路径中找到该文件,并具有读取该文件的授权。
可以肯定的是,您可以使用Stream
,并检查Length
。然后使用XmlDocument.Load
和Stream
。