读取xml文件并提取一些整数值
本文关键字:整数 提取 xml 文件 读取 | 更新日期: 2023-09-27 18:27:22
我有一个包含类似内容的xml文件
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<REPLY>
<DATA BYTE='116' />
<DATA BYTE='88' />
<DATA BYTE='15' />
<DATA BYTE='0' />
from this
<DATA BYTE='44' />
<DATA BYTE='1' />
<DATA BYTE='0' />
<DATA BYTE='0' />
to this
<DATA BYTE='0' />
<DATA BYTE='0' />
.....
<DATA BYTE='255' />
<DATA BYTE='255' />
<DATA BYTE='255' />
<DATA BYTE='0' />
</REPLY>
我想从这个到这个读4行,实际上我想从这4行中提取值44
、1
、0
、0
。值是动态的,文档的结构不会改变(至少在前15行)。
最好的方法是什么?
- 使用
XDocument.Parse()
或XDocument.Load()
方法将XML加载到XDocument
实例中 - 使用LINQ to XML查询XML:
var values = doc.Root.Elements("DATA").Skip(4)
.Take(4)
.Select(x => (int)x.Attribute("BYTE"))
.ToList();
我假设REPLY
是XML中的根元素。如果不是,你必须先查询:
var reply = doc.Descendants("REPLY").First();
var values = reply.Elements("DATA").Skip(4)
.Take(4)
.Select(x => (int)x.Attribute("BYTE"))
.ToList();