使用LINQ

时间:2015-05-20 11:00:48

标签: c# xml

我有一个小问题。我的XML文档如下所示:

<?xml version="1.0" encoding="utf-8"?>
<BACKUP>
  <HEAD>
    <NAME>Test</NAME>
    <DATE>19.05.2015 17:05:42</DATE>
  </HEAD>
  <DIRECTORYSRC>
    <SOURCEDIR>C:\Users\User\Pictures</SOURCEDIR>
  </DIRECTORYSRC>
  <DIRECTORYTRG>
    <TARGETDIR>D:\_backup</TARGETDIR>
  </DIRECTORYTRG>
</BACKUP>

阅读NAMETARGETDIR值内容的最佳方式是什么?是否有一种只读取这些特定节点的简单方法?

如果我有一个TARGETDIR个节点怎么办?我可以使用foreach循环吗?

1 个答案:

答案 0 :(得分:2)

您可以使用LINQ to XML轻松完成此操作:

$section = $phpWord->addSection();
$section->getStyle()->setBreakType('continuous');

var doc = XDocument.Parse(xml); var name = (string)doc.Descendants("NAME").Single(); var targetDirs = doc.Descendants("TARGETDIR").Select(e => e.Value).ToList(); 包含您的单个name值,NAME是包含所有targetDirs值的List<string>