<myroot>
some data.
</myroot>
上記のようなデータを含むxmlファイルがあります。間に来るすべてのデータを取得したい
<myroot> and </myroot>
文字列変数に。
私にはいくつかの制限があります。つまり、これには XMLTextReader のみを使用する必要があります。これを行うには、xdocument を使用せずに XmlTextReader を使用するだけです。
<myroot>
some data.
</myroot>
上記のようなデータを含むxmlファイルがあります。間に来るすべてのデータを取得したい
<myroot> and </myroot>
文字列変数に。
私にはいくつかの制限があります。つまり、これには XMLTextReader のみを使用する必要があります。これを行うには、xdocument を使用せずに XmlTextReader を使用するだけです。
に子ノードがない場合は、 XmlReader.ReadElementContentAsString<myroot>
を選択します。
string content = reader.ReadElementContentAsString();
ReadElementContentAsString
現在のノードを消費し、リーダーを次の要素に進めます。
子ノードがある場合は、何をしたいかによって異なります。内部XMLが必要な場合は、Adamのソリューションを使用する必要があります。子ノードのコンテンツが必要な場合は、XMLを再帰的にトラバースする必要があります。そこであなたを助けるために、あなたはあなたが何を達成しようとしているのかを正確に説明する必要があります。
xmlnodelistが必要で、その後、ノードを通過するforeachループが必要です。xmlNodeタイプにはinnerHtmlプロパティがあります。例:myxmlNode.SelectSingleNode( "// REVNR")。InnerText
それはそれを行う方法です。非常に基本的な形式でxmlを読み取る方法の簡単な例を以下に示します。それを使用していくつかのロジックを作成することを確認してください
XmlTextReader reader = new XmlTextReader ("books.xml");
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element: // The node is an element.
Console.Write("<" + reader.Name);
Console.WriteLine(">");
break;
case XmlNodeType.Text: //Display the text in each element.
Console.WriteLine (reader.Value);
break;
case XmlNodeType. EndElement: //Display the end of the element.
Console.Write("</" + reader.Name);
Console.WriteLine(">");
break;
}
}