2013-10-09 90 views
0

我正在尝试通过Robert Harvey代码在this主题中加载和保存数据。我可以保存。 但加载过程未成功完成。从xml文件加载

我曾尝试:

var list = XmlHelper.FromXmlFile<List<Item>>(@"c:\folder\file.xml"); 

我没有找到正确的namespase的项目

var list = XmlHelper.FromXmlFile<List<Array>>(@"c:\folder\file.xml"); 
{"Object reference not set to an instance of an object."} 
var list = XmlHelper.FromXmlFile<List<ArrayList>>(@"c:\folder\file.xml"); 
{"<ArrayOfAnyType xmlns=''> was not expected."} 
var list = XmlHelper.FromXmlFile<List<Double>>(@"c:\folder\file.xml"); 
{"<ArrayOfAnyType xmlns=''> was not expected."} 

但他们都具有以下列出的这些错误。

我想以arraylist或double []的形式检索这些数字;

的XML内容: enter image description here

+0

我不知道XmlHelper。改为查看XDocument。 XDocument在使用上看起来更简单。不是我是一个专家或任何东西。 – Mathew

回答

1

首先加载文档:

var doc = XDocument.Load("c:\somefile.xml"); 

然后你可以访问元素

XElement xe = doc.Element("Name of the Element"); 

如果使用相同的名称有一个以上的元素,你可以让他们:

IEnumerable<XElement> xe = doc.Elements("Name of the Element"); 

您可以访问属性类型的相似:

XAttribute xa = doc.Attribute("Name of the Attribute"); 

IEnumerable<XAttribute> xa = doc.Attributes("name"); 

不要忘记总是做空检查。

我希望这会有所帮助。

0

加载从XML文件中的数据使用下面的过程中,如果你使用的是C#

XElement xelement = XElement.Load("..\\..\\XML1.xml"); 
+1

我同意。这就是为什么我在上面的评论中建议使用XDocument的原因。使用XDocument,您可以访问xml文件中的每个XElement和XAttribute。 – Mathew

+0

它将所有xml作为单个变量加载一个节点。那么我怎样才能访问这些数字。 –

+0

它具有价值属性,它的值是字符串类型和添加的所有号码GETHER这样的(这是一个字符串):“216.23737589973135209.67775014847356106.6266524689597299.760910704962214302.68822465901223293.86403464104819” –