日期:2014-05-17  浏览次数:21173 次

C# 解析一个段简单的XML
刚初学C#,调用了一个借口,返回XML串,内容是:

 <DocumentElement>
  <fileList>
  <fileName>2012102308310.jpg</fileName>
  </fileList>
  <fileList>
  <fileName>2012102309310.jpg</fileName>
  </fileList>
  <fileList>
  <fileName>2012102310310.jpg</fileName>
  </fileList>
  </DocumentElement>
这样的东西,我想把里面的各个节点上的带数字值(2012102308310.jpg.....)取出来, 该怎么解析呢?求代码

------解决方案--------------------
探讨

string[] str =FileName.Split(new string[]{"<fileName>"}, StringSplitOptions.RemoveEmptyEntries);
for(int i=1;i<str.Length;i++)
{
MessageBox.Show(str.Split('<')[0]);
}

------解决方案--------------------
XElement doc= XElement.Parse(str);
var tradeNodes=from node in doc.Elements("fileList") select node;
foreach(var node in tradeNodes)
{
node.Element("fileName").Value
}


------解决方案--------------------
string result = "";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Application.StartupPath + "/file/aa.xml");
XmlNodeList lstNode = xmlDoc.DocumentElement.ChildNodes;
foreach (XmlNode node in lstNode)
{
XmlNodeList lstChildNode = node.ChildNodes;
foreach (XmlNode childNode in lstChildNode)
{
result = childNode.InnerText;
}
}
return result;