<String>
\t \t <Object>
\t \t \t <Name>Whatever</Name>
\t \t </Object>
</String>
<Array>
<Name>Max</Name>
<Dimsize>8</Dimsize>
<Cluster>
<Name>Maximums</Name>
<NumElts>3</NumElts>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
</Cluster>
<Cluster>
<Name>Maximums</Name>
<NumElts>3</NumElts>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
</Cluster>
<Cluster>
<Name>Maximums</Name>
<NumElts>3</NumElts>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
<U16>
<Name>Max</Name>
<Val>0</Val>
</U16>
</Cluster>
</Array>
こんにちは、
Iは、上記のXML文字列があると私は、配列[アイテム]にそのデータを解析したいです。
ご覧のとおり、3つのクラスタノードがあります。 XMLテキストを繰り返し処理して、コンテンツをクラスター内の配列item [0]、item [1]およびitem [2]内に格納します。
これまでのコードはありますが、最初のノードからのみデータが出力されます。残りのノードからすべてのデータを取得するにはどうすればよいですか?
var xmlStr = File.ReadAllText("myxml.xml");
var str = XElement.Parse(xmlStr);
for (int i = 0; i < 3; i++)
{
var txt = str.XPathSelectElement("Array/Cluster");
var values = txt.Value;
Console.WriteLine(values);
myChannelArray[i] = values;
}
可能な重複します(http:/を/stackoverflow.com/questions/55828/how-does-one-parse-xml-files) – Nasreddine
あなたが今までに実現するよりも速くXMLを解析できるライブラリがたくさんあります。私はあなたが車輪を再発明する代わりに1つを使用することをお勧めします。 –