この記事では、C# または Visual Basic で、XmlReader から直接、XML ツリーを作成する方法を紹介します。 XmlReader から XElement を作成するには、ある要素ノード上に XmlReader を配置します。 XmlReader はコメントや処理命令をスキップしますが、XmlReader がテキスト ノードに配置されている場合はエラーがスローされます。 このようなエラーを回避するため、XmlReader から XML ツリーを作成する前に XmlReader を要素上に配置してください。
例: XmlReader オブジェクトから XElement オブジェクトを読み込む
この例では、XML ドキュメント「サンプル XML ファイル: 書籍」を使用します。
次のコードでは、XmlReader オブジェクトを作成し、最初の要素ノードが見つかるまでノードを読み取り、XElement オブジェクトを読み込みます。
XmlReader r = XmlReader.Create("books.xml");
while (r.NodeType != XmlNodeType.Element)
r.Read();
XElement e = XElement.Load(r);
Console.WriteLine(e);
Dim r As XmlReader = XmlReader.Create("books.xml")
Do While r.NodeType <> XmlNodeType.Element
r.Read()
Loop
Dim e As XElement = XElement.Load(r)
Console.WriteLine(e)
この例を実行すると、次の出力が生成されます。
<Catalog>
<Book id="bk101">
<Author>Garghentini, Davide</Author>
<Title>XML Developer's Guide</Title>
<Genre>Computer</Genre>
<Price>44.95</Price>
<PublishDate>2000-10-01</PublishDate>
<Description>An in-depth look at creating applications
with XML.</Description>
</Book>
<Book id="bk102">
<Author>Garcia, Debra</Author>
<Title>Midnight Rain</Title>
<Genre>Fantasy</Genre>
<Price>5.95</Price>
<PublishDate>2000-12-16</PublishDate>
<Description>A former architect battles corporate zombies,
an evil sorceress, and her own childhood to become queen
of the world.</Description>
</Book>
</Catalog>
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET