【发布时间】:2011-08-26 01:11:40
【问题描述】:
这是输入字符串的一部分,我不能修改它,它总是以这种方式出现(通过共享内存),但我当然可以在将它放入字符串后进行修改:
<sys><id>SCPUCLK</id><label>CPU Clock</label><value>2930</value></sys><sys><id>SCPUMUL</id><label>CPU Multiplier</label><value>11.0</value></sys><sys><id>SCPUFSB</id><label>CPU FSB</label><value>266</value></sys>
我都读过:
String.Concat(
XElement.Parse(encoding.GetString(bytes))
.Descendants("value")
.Select(v => v.Value));
和:
XmlDocument document = new XmlDocument();
document.LoadXml(encoding.GetString(bytes));
XmlNode node = document.DocumentElement.SelectSingleNode("//value");
Console.WriteLine("node = " + node);
但是它们在运行时都有错误;输入有多个根(有多个根元素引用),我不想拆分字符串。
他们是否有任何读取字符串的方法可以获取<value> 和</value> 之间的值,而不会将字符串吐入多个输入?
【问题讨论】:
-
但是你在一个 XML 文档中只能有一个根...否则它不会被称为文档的根。