1

XML ファイルの特定の部分を、さまざまなデータを含む文字列に変換する必要があります。例えば。

この部分を含むxmlファイルがあります: -<root>-<Data><1>data</1>

ファイル全体ではなく、その行のみを文字列に変換したい。これ、私はやり方を知っています。私の問題は、状況によって「1」のデータが変化することです。「1」のデータが何を読み取っても、同じプログラムを使用して変換できるようにしたいと考えています。

私が使用できることがわかっているデータを確認せずに「1」行を読み取るには:

 var xml = "<root><Data><1>data</1></Data></root>";   
var xmlString = XElement.Parse(xml).Descendants("1").FirstOrDefault().Value;

しかし、「1」の内容が変わってどうすればいいのかわかりません。

4

1 に答える 1

1
var xml = "<root><Data><One>data</One></Data></root>";

var xmlString = (from data in XElement.Parse(xml).Descendants("Data")
                 where data.Descendants().Any()
                 select data.Descendants().First().Value).FirstOrDefault();

補足: 名前が数字で始まる XML 要素を持つことは、無効な XML と見なされるため、XElement はそれを解析できません。

于 2012-05-21T03:33:50.700 に答える