用C#linq
1。 XML文档加载:
该过程首先加载XML文档:
2。提取1级和级别2元素:<code class="language-csharp">XDocument xdoc = XDocument.Load("data.xml");</code>
接下来,linq查询提取“ Level1”元素及其关联的“ Level2”儿童:
>此查询将数据投射到包含“ Level1”标头的匿名类型和“ Level2”名称的集合中。
处理潜在的无效属性。<code class="language-csharp">var lv1Elements = from lv1 in xdoc.Descendants("level1") select new { Header = lv1.Attribute("name")?.Value, Children = lv1.Descendants("level2").Select(lv2 => lv2.Attribute("name")?.Value) };</code>
?.Value
3。格式化输出:
最后,提取的数据格式化并输出:
>。
<code class="language-csharp">StringBuilder output = new StringBuilder(); foreach (var lv1 in lv1Elements) { output.AppendLine(lv1.Header); foreach (var lv2 in lv1.Children) { output.AppendLine(" " + lv2); } } Console.WriteLine(output.ToString());</code>
完整示例:StringBuilder
这是完整的,精致的代码:
以上是LINQ如何简化C#中的XML数据的读取和格式化?的详细内容。更多信息请关注PHP中文网其他相关文章!