c# - 在 C# 中使用“浮动”结构解析 XML 并填充列表框
问题描述
有一个具有以下结构的 XML 文件。
<books>
<myonlystore>
<book1>
<author>Book1 author</author>
<title>Book1 Title</title>
</book1>
<book2>
<author>Book2 author</author>
<title>Book2 Title</title>
</book2>
<book3>
<author>Book3 author</author>
<title>Book3 Title</title>
<ISBN>12345</ISBN>
</book3>
</myonlystore>
</books>
尝试将 book1、book2 和 book3 放入列表框中,并在选择时显示各自的可用属性。但是对 XML 结构感到困惑。请告知如何正确阅读此文件。
谢谢
解决方案
您可以像这样使用 XDocumnet:
var result = XDocument.Parse(xml).Root
.Descendants().Where(n => n.Name.LocalName.StartsWith("book"))
.Select(b => new
{
Author = (string) b.Element("author"),
Title = (string) b.Element("title"),
Isbn = (string) b.Element("ISBN")
});
更新:
var result = XDocument.Parse(xml).Root.Element("myonlystore")
.Elements()
.Select(b => new
{
Author = (string) b.Element("author"),
Title = (string) b.Element("title"),
Isbn = (string) b.Element("ISBN")
});
推荐阅读
- python - 电阻抗断层扫描和 MCMC
- joomla - 引导模式涵盖内容
- jenkins - Jenkins 可以将构建创建的工件发送给触发构建的用户吗?
- google-sheets - 谷歌表格上的 googlefinance 功能停止工作
- java - Java Printf 精度不是四舍五入
- python - Python:将 Astropy 表转换为数组(使用 Numpy?)进行绘图(在 matplotlib 上)
- node.js - 在 mongodb 中同时使用多个查询
- db2 - DB2:如何解决十进制列的 decfloat 错误?
- android - 为什么每 5-8 分钟在后台检测一次信标,以及如何使其少于此?为什么信标检测会在 15-30 分钟后停止?已回答
- html - 在同一个html表格单元格中左右对齐和居中文本