C# XML文档处理无法加载文件
我正在编写一个应用程序,需要从XML文档中提取信息 我的XML文档存储在我的项目bin/Debug文件中 我不能让它工作 名为informationData的XML文档:C# XML文档处理无法加载文件,c#,xml,C#,Xml,我正在编写一个应用程序,需要从XML文档中提取信息 我的XML文档存储在我的项目bin/Debug文件中 我不能让它工作 名为informationData的XML文档: <xml> <information> <name >stian</name> <surname>Kruger</surname> <tel>0825514302</tel> <photo>1234JLJ.jpg<
<xml>
<information>
<name >stian</name>
<surname>Kruger</surname>
<tel>0825514302</tel>
<photo>1234JLJ.jpg</photo>
</information>
</xml>
您可以使用此代码
<?xml version="1.0" encoding="utf-8" ?>
<information>
<name >stian</name>
<surname>Kruger</surname>
<tel>0825514302</tel>
<photo>1234JLJ.jpg</photo>
</information>
var xmlDoc = XDocument.Load("informationData.xml");
var name = xmlDoc.Element("name").Value;
var surname = xmlDoc.Element("surname").Value;
var telNumber = Convert.ToInt32(xmlDoc.Element("tel").Value);
斯蒂安
克鲁格
0825514302
1234JLJ.jpg
var xmlDoc=XDocument.Load(“informationData.xml”);
var name=xmlDoc.Element(“name”).Value;
变量姓氏=xmlDoc.Element(“姓氏”).Value;
var telNumber=Convert.ToInt32(xmlDoc.Element(“tel”).Value);
您可以使用此代码
<?xml version="1.0" encoding="utf-8" ?>
<information>
<name >stian</name>
<surname>Kruger</surname>
<tel>0825514302</tel>
<photo>1234JLJ.jpg</photo>
</information>
var xmlDoc = XDocument.Load("informationData.xml");
var name = xmlDoc.Element("name").Value;
var surname = xmlDoc.Element("surname").Value;
var telNumber = Convert.ToInt32(xmlDoc.Element("tel").Value);
斯蒂安
克鲁格
0825514302
1234JLJ.jpg
var xmlDoc=XDocument.Load(“informationData.xml”);
var name=xmlDoc.Element(“name”).Value;
变量姓氏=xmlDoc.Element(“姓氏”).Value;
var telNumber=Convert.ToInt32(xmlDoc.Element(“tel”).Value);
将
添加为XML文件的第一行将
添加为XML文件的第一行您的XPath选择器错误。替换:
XmlNodeList dataNodes = xmlDoc.SelectNodes("/information");
与:
或与:
XmlNodeList dataNodes = xmlDoc.DocumentElement.SelectNodes("information");
还要确保XML文件与正在运行的可执行文件位于同一文件夹中(您说的是
bin/Debug/informationData.XML
)。如果XML文件是Visual Studio项目的一部分,则可以选择它,并在属性集复制到输出目录
中复制到如果更新
。这样,VS将在每次编译项目时自动将XML文件复制到此输出文件夹。您的XPath选择器错误。替换:
XmlNodeList dataNodes = xmlDoc.SelectNodes("/information");
与:
或与:
XmlNodeList dataNodes = xmlDoc.DocumentElement.SelectNodes("information");
还要确保XML文件与正在运行的可执行文件位于同一文件夹中(您说的是
bin/Debug/informationData.XML
)。如果XML文件是Visual Studio项目的一部分,则可以选择它,并在属性集复制到输出目录
中复制到如果更新
。这样,VS将在每次编译项目时自动将XML文件复制到此输出文件夹。您使用的是什么框架版本?首选XDocument
而不是XmlDocument
。尝试使用XmlNodeList dataNodes=xmlDoc。选择节点(“信息”);您可以发布确切的异常和消息是什么以及它发生在哪一行吗?它不进入foreach循环,而是跳过它。另外,XML规范()建议您不应该真正使用“”作为元素名称。我从来没有真正知道它会导致问题,但标准说它不应该被使用:xml、xml或混合大小写变体不能用作元素名称的开头;严格来说,你使用的是什么框架版本?首选XDocument
而不是XmlDocument
。尝试使用XmlNodeList dataNodes=xmlDoc。选择节点(“信息”);您可以发布确切的异常和消息是什么以及它发生在哪一行吗?它不进入foreach循环,而是跳过它。另外,XML规范()建议您不应该真正使用“”作为元素名称。我从来没有真正知道它会导致问题,但标准说它不应该被使用:xml、xml或混合大小写变体不能用作元素名称的开头;严格地说。