XmlDocument.Load メソッド

定義

Stream、URL、TextReader、または XmlReader から、指定した XML データを読み込みます。

オーバーロード

Load(Stream)

指定したストリームから XML ドキュメントを読み込みます。

Load(TextReader)

指定した TextReader から XML ドキュメントを読み込みます。

Load(String)

指定した URL から XML ドキュメントを読み込みます。

Load(XmlReader)

指定した XmlReader から XML ドキュメントを読み込みます。

Load(Stream)

指定したストリームから XML ドキュメントを読み込みます。

public:
 virtual void Load(System::IO::Stream ^ inStream);
public virtual void Load (System.IO.Stream inStream);
abstract member Load : System.IO.Stream -> unit
override this.Load : System.IO.Stream -> unit
Public Overridable Sub Load (inStream As Stream)

パラメーター

inStream
Stream

読み込む XML ドキュメントが含まれているストリーム。

例外

XML で読み込みまたは解析のエラーが発生しました。 ここでは FileNotFoundException が発生しました。

注釈

注意

メソッドは Load 常に重要な空白を保持します。 プロパティは PreserveWhitespace 、要素コンテンツの空白文字である重要でない空白を保持するかどうかを決定します。 既定値は です false。要素コンテンツの空白は保持されません。

検証を行う場合は、 クラスと メソッドを使用XmlReaderSettingsして検証XmlReaderインスタンスをCreate作成できます。 詳細については、XmlReader のリファレンス ページの「解説」を参照してください。

このメソッドは、ドキュメント オブジェクト モデル (DOM) に対する Microsoft の拡張機能です。

このメソッドは、入力 XML の文字列形式 (UTF-8、ANSI など) を自動的に検出します。 ストリームの読み取りに使用されるエンコードをアプリケーションで把握する必要がある場合は、オブジェクトを XmlTextReader 使用してストリームを読み取り、 プロパティを XmlTextReader.Encoding 使用してエンコードを決定することを検討してください。 オブジェクトを使用して XML を XmlDocument 操作する必要がある場合は、 オブジェクトを XmlTextReader 使用して作成できます。 詳細については、「 XPathDocument と XmlDocument を使用した XML データの読み取り」を参照してください。

こちらもご覧ください

適用対象

Load(TextReader)

指定した TextReader から XML ドキュメントを読み込みます。

public:
 virtual void Load(System::IO::TextReader ^ txtReader);
public virtual void Load (System.IO.TextReader txtReader);
abstract member Load : System.IO.TextReader -> unit
override this.Load : System.IO.TextReader -> unit
Public Overridable Sub Load (txtReader As TextReader)

パラメーター

txtReader
TextReader

XML データをドキュメントに送るために使用する TextReader

例外

XML で読み込みまたは解析のエラーが発生しました。 この場合は、ドキュメントは空のままです。

次の例では、 クラスを StringReader 使用して XML データの文字列を オブジェクトに XmlDocument 読み込みます。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   // Create the XmlDocument.
   XmlDocument^ doc = gcnew XmlDocument;
   String^ xmlData = "<book xmlns:bk='urn:samples'></book>";
   doc->Load( gcnew StringReader( xmlData ) );
   
   // Create a new element and add it to the document.
   XmlElement^ elem = doc->CreateElement( "bk", "genre", "urn:samples" );
   elem->InnerText = "fantasy";
   doc->DocumentElement->AppendChild( elem );
   Console::WriteLine( "Display the modified XML..." );
   doc->Save( Console::Out );
}

using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    // Create the XmlDocument.
    XmlDocument doc = new XmlDocument();
    string xmlData = "<book xmlns:bk='urn:samples'></book>";

    doc.Load(new StringReader(xmlData));

    // Create a new element and add it to the document.
    XmlElement elem = doc.CreateElement("bk", "genre", "urn:samples");
    elem.InnerText = "fantasy";
    doc.DocumentElement.AppendChild(elem);

    Console.WriteLine("Display the modified XML...");
    doc.Save(Console.Out);
  }
}
Imports System.IO
Imports System.Xml

public class Sample 

  public shared sub Main() 

    ' Create the XmlDocument.
    Dim doc as XmlDocument = new XmlDocument()
    Dim xmlData as string = "<book xmlns:bk='urn:samples'></book>"

    doc.Load(new StringReader(xmlData))

    ' Create a new element and add it to the document.
    Dim elem as XmlElement = doc.CreateElement("bk", "genre", "urn:samples")
    elem.InnerText = "fantasy"
    doc.DocumentElement.AppendChild(elem)

    Console.WriteLine("Display the modified XML...")
    doc.Save(Console.Out)

  end sub
end class

注釈

注意

メソッドは Load 常に重要な空白を保持します。 プロパティは PreserveWhitespace 、要素コンテンツの空白文字である重要でない空白を保持するかどうかを決定します。 既定値は です false。要素コンテンツの空白は保持されません。

検証を行う場合は、 クラスと メソッドを使用XmlReaderSettingsして検証XmlReaderインスタンスをCreate作成できます。 詳細については、XmlReader のリファレンス ページの「解説」を参照してください。

このメソッドは、ドキュメント オブジェクト モデル (DOM) に対する Microsoft の拡張機能です。

こちらもご覧ください

適用対象

Load(String)

指定した URL から XML ドキュメントを読み込みます。

public:
 virtual void Load(System::String ^ filename);
public virtual void Load (string filename);
abstract member Load : string -> unit
override this.Load : string -> unit
Public Overridable Sub Load (filename As String)

パラメーター

filename
String

読み込む XML ドキュメントを格納しているファイルの URL。 URL には、ローカル ファイルまたは HTTP の URL (Web アドレス) を指定できます。

例外

XML で読み込みまたは解析のエラーが発生しました。 ここでは FileNotFoundException が発生しました。

filename は長さ 0 の文字列か、空白のみで構成されるか、または InvalidPathCharsで定義される 1 つ以上の正しくない文字を含んでいます。

filenamenullです。

指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。

指定されたパスが正しくありません (たとえば、マップされていないドライブにあるなど)。

ファイルを開くときに、I/O エラーが発生しました。

filename が読み取り専用のファイルを指定しました。

- または -

この操作は、現在のプラットフォームではサポートされていません。

- または -

filename がディレクトリを指定しました。

- または -

呼び出し元に、必要なアクセス許可がありません。

filename で指定されたファイルが見つかりませんでした。

filename の形式が正しくありません。

呼び出し元に、必要なアクセス許可がありません。

注釈

注意

メソッドは Load 常に重要な空白を保持します。 プロパティは PreserveWhitespace 、要素コンテンツの空白文字である重要でない空白を保持するかどうかを決定します。 既定値は です false。要素コンテンツの空白は保持されません。

検証を行う場合は、 クラスと メソッドを使用XmlReaderSettingsして検証XmlReaderインスタンスをCreate作成できます。 詳細については、XmlReader のリファレンス ページの「解説」を参照してください。

このメソッドは、ドキュメント オブジェクト モデル (DOM) に対する Microsoft の拡張機能です。

こちらもご覧ください

適用対象

Load(XmlReader)

指定した XmlReader から XML ドキュメントを読み込みます。

public:
 virtual void Load(System::Xml::XmlReader ^ reader);
public virtual void Load (System.Xml.XmlReader reader);
abstract member Load : System.Xml.XmlReader -> unit
override this.Load : System.Xml.XmlReader -> unit
Public Overridable Sub Load (reader As XmlReader)

パラメーター

reader
XmlReader

XML データをドキュメントに送るために使用する XmlReader

例外

XML で読み込みまたは解析のエラーが発生しました。 この場合は、ドキュメントは空のままです。

次の例では、ファイルの最後の book ノードを books.xml XML ドキュメントに読み込みます。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   //Create the XmlDocument.
   XmlDocument^ doc = gcnew XmlDocument;
   
   //Load the document with the last book node.
   XmlTextReader^ reader = gcnew XmlTextReader( "books.xml" );
   reader->WhitespaceHandling = WhitespaceHandling::None;
   reader->MoveToContent();
   reader->Read();
   reader->Skip(); //Skip the first book.
   reader->Skip(); //Skip the second book.
   doc->Load( reader );
   doc->Save( Console::Out );
}

using System;
using System.IO;
using System.Xml;

public class Sample
{
  public static void Main()
  {
    //Create the XmlDocument.
    XmlDocument doc = new XmlDocument();

    //Load the document with the last book node.
    XmlTextReader reader = new XmlTextReader("books.xml");
    reader.WhitespaceHandling = WhitespaceHandling.None;
    reader.MoveToContent();
    reader.Read();
    reader.Skip(); //Skip the first book.
    reader.Skip(); //Skip the second book.
    doc.Load(reader);

    doc.Save(Console.Out);
  }
}
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        'Create the XmlDocument.
        Dim doc As New XmlDocument()
        
        'Load the document with the last book node.
        Dim reader As New XmlTextReader("books.xml")
        reader.WhitespaceHandling = WhitespaceHandling.None
        reader.MoveToContent()
        reader.Read()
        reader.Skip() 'Skip the first book.
        reader.Skip() 'Skip the second book.
        doc.Load(reader)
        
        doc.Save(Console.Out)
    End Sub
End Class

この例では、 books.xmlファイル の を入力として使用します。

<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
  <book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
    <title>The Autobiography of Benjamin Franklin</title>
    <author>
      <first-name>Benjamin</first-name>
      <last-name>Franklin</last-name>
    </author>
    <price>8.99</price>
  </book>
  <book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
    <title>The Confidence Man</title>
    <author>
      <first-name>Herman</first-name>
      <last-name>Melville</last-name>
    </author>
    <price>11.99</price>
  </book>
  <book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
    <title>The Gorgias</title>
    <author>
      <name>Plato</name>
    </author>
    <price>9.99</price>
  </book>
</bookstore>

注釈

注意

メソッドは Load 常に重要な空白を保持します。 プロパティは PreserveWhitespace 、要素コンテンツの空白文字である重要でない空白を保持するかどうかを決定します。 既定値は です false。要素コンテンツの空白は保持されません。

リーダーが初期状態 (ReadState =ReadState.Initial) Load の場合は、リーダーの内容全体を使用し、見つけたものから DOM をビルドします。

リーダーが既に深さ "n" のノードに配置されている場合、このメソッドは、そのノードとその後のすべての兄弟を、深さ "n" を閉じる終了タグまで読み込みます。 これには、次の結果があります。

現在のノードとその兄弟が次のようになります。

<!--comment--><element1>one</element1><element2>two</element2>

Load ドキュメントに 2 つのルート レベル要素を含めることができないため、例外がスローされます。 現在のノードとその兄弟が次のようになります。

<!--comment--><?process instruction?><!--comment--></endtag>

Load は成功しますが、ルート レベル要素がないため、不完全な DOM ツリーがあります。 ドキュメントを保存する前に、ルート レベル要素を追加する必要があります。それ以外の場合 Save は例外がスローされます。

リーダーが、ドキュメントのルート レベル (空白や属性ノードなど) に対して無効なリーフ ノードに配置されている場合、リーダーはルートに使用できるノードに配置されるまで読み取りを続行します。 ドキュメントの読み込みは、この位置から開始されます。

検証を行う場合は、 クラスと メソッドを使用XmlReaderSettingsして検証XmlReaderインスタンスをCreate作成できます。 詳細については、XmlReader のリファレンス ページの「解説」を参照してください。

このメソッドは、ドキュメント オブジェクト モデル (DOM) に対する Microsoft の拡張機能です。

こちらもご覧ください

適用対象