次の方法で共有


方法 : XmlReader からツリーを作成する

このトピックでは、XmlReader から直接 XML ツリーを作成する方法について説明します。 XmlReader から XElement を作成するには、XmlReader を要素ノードに配置する必要があります。 XmlReader はコメントや処理命令をスキップしますが、XmlReader がテキスト ノードに配置されている場合はエラーがスローされます。 このようなエラーを回避するため、XmlReader から XML ツリーを作成する前に、必ず XmlReader を要素に配置してください。

使用例

この例では、「サンプル XML ファイル : 書籍 (LINQ to XML)」の XML ドキュメントを使用しています。

次のコードでは、T:System.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>

参照

概念

XML の解析