Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# XML文档处理无法加载文件_C#_Xml - Fatal编程技术网

C# 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文档中提取信息

我的XML文档存储在我的项目bin/Debug文件中

我不能让它工作

名为informationData的XML文档:

<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或混合大小写变体不能用作元素名称的开头;严格地说。