XmlDocument.Load Methode

Definitie

Laadt de opgegeven XML-gegevens uit een Stream, een URL, een TextReaderof een XmlReader.

Overloads

Name Description
Load(Stream)

Laadt het XML-document uit de opgegeven stream.

Load(TextReader)

Laadt het XML-document van de opgegeven TextReader.

Load(String)

Laadt het XML-document vanuit de opgegeven URL.

Load(XmlReader)

Laadt het XML-document van de opgegeven XmlReader.

Load(Stream)

Laadt het XML-document uit de opgegeven stream.

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)

Parameters

inStream
Stream

De stroom met het XML-document dat moet worden geladen.

Uitzonderingen

Er is een belastings- of parseringsfout in de XML. In dit geval wordt er een FileNotFoundException opgeworpen.

Opmerkingen

Note

De Load methode behoudt altijd aanzienlijke witruimte. De PreserveWhitespace eigenschap bepaalt of onbelangrijke witruimte, die witruimte is in elementinhoud, behouden blijft. De standaardwaarde is false; witruimte in elementinhoud blijft niet behouden.

Als u validatie wilt uitvoeren, kunt u een validatie-exemplaar XmlReader maken met behulp van de XmlReaderSettings klasse en de Create methode. Zie de sectie Opmerkingen van de XmlReader referentiepagina voor meer informatie.

Deze methode is een Microsoft extensie voor het Document Object Model (DOM).

Met deze methode wordt automatisch de tekenreeksindeling van de invoer-XML gedetecteerd (bijvoorbeeld UTF-8, ANSI, enzovoort). Als uw toepassing moet weten welke codering wordt gebruikt om de stream te lezen, kunt u overwegen om een XmlTextReader object te gebruiken om de stream te lezen en vervolgens de XmlTextReader.Encoding eigenschap te gebruiken om de codering te bepalen. Als u een XmlDocument object wilt gebruiken om met XML te werken, kunt u het XmlTextReader object gebruiken om er een te maken. Zie XML-gegevens lezen met XPathDocument en XmlDocument voor meer informatie.

Zie ook

Van toepassing op

Load(TextReader)

Laadt het XML-document van de opgegeven TextReader.

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)

Parameters

txtReader
TextReader

De TextReader gebruikte om de XML-gegevens in het document in te voeren.

Uitzonderingen

Er is een belastings- of parseringsfout in de XML. In dit geval blijft het document leeg.

Voorbeelden

In het volgende voorbeeld wordt de StringReader klasse gebruikt om een tekenreeks met XML-gegevens in het XmlDocument object te laden.

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

public class Sample1
{
  public static void CreateElementExample()
  {
    // Create the XmlDocument.
    XmlDocument doc = new();
    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

Opmerkingen

Note

De Load methode behoudt altijd aanzienlijke witruimte. De PreserveWhitespace eigenschap bepaalt of onbelangrijke witruimte, die witruimte is in elementinhoud, behouden blijft. De standaardwaarde is false; witruimte in elementinhoud blijft niet behouden.

Als u validatie wilt uitvoeren, kunt u een validatie-exemplaar XmlReader maken met behulp van de XmlReaderSettings klasse en de Create methode. Zie de sectie Opmerkingen van de XmlReader referentiepagina voor meer informatie.

Deze methode is een Microsoft extensie voor het Document Object Model (DOM).

Zie ook

Van toepassing op

Load(String)

Laadt het XML-document vanuit de opgegeven URL.

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)

Parameters

filename
String

URL voor het bestand met het XML-document dat moet worden geladen. De URL kan een lokaal bestand of een HTTP-URL (een webadres) zijn.

Uitzonderingen

Er is een belastings- of parseringsfout in de XML. In dit geval wordt er een FileNotFoundException opgeworpen.

filename is een tekenreeks met lengte nul, bevat alleen witruimte of bevat een of meer ongeldige tekens zoals gedefinieerd door InvalidPathChars.

filename is null.

Het opgegeven pad, de bestandsnaam of beide overschrijden de door het systeem gedefinieerde maximumlengte.

Het opgegeven pad is ongeldig (bijvoorbeeld op een niet-toegewezen station).

Er is een I/O-fout opgetreden tijdens het openen van het bestand.

filename een bestand opgegeven dat het kenmerk Alleen-lezen heeft.

– of –

Deze bewerking wordt niet ondersteund op het huidige platform.

– of –

filename een map opgegeven.

– of –

De beller heeft niet de vereiste machtiging.

Het opgegeven filename bestand is niet gevonden.

filename heeft een ongeldige indeling.

De beller heeft niet de vereiste machtiging.

Opmerkingen

Note

De Load methode behoudt altijd aanzienlijke witruimte. De PreserveWhitespace eigenschap bepaalt of onbelangrijke witruimte, die witruimte is in elementinhoud, behouden blijft. De standaardwaarde is false; witruimte in elementinhoud blijft niet behouden.

Als u validatie wilt uitvoeren, kunt u een validatie-exemplaar XmlReader maken met behulp van de XmlReaderSettings klasse en de Create methode. Zie de sectie Opmerkingen van de XmlReader referentiepagina voor meer informatie.

Deze methode is een Microsoft extensie voor het Document Object Model (DOM).

Zie ook

Van toepassing op

Load(XmlReader)

Laadt het XML-document van de opgegeven XmlReader.

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)

Parameters

reader
XmlReader

De XmlReader gebruikte om de XML-gegevens in het document in te voeren.

Uitzonderingen

Er is een belastings- of parseringsfout in de XML. In dit geval blijft het document leeg.

Voorbeelden

In het volgende voorbeeld wordt het laatste boekknooppunt van het books.xml bestand in het XML-document geladen.

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

In het voorbeeld wordt het bestand als books.xmlinvoer gebruikt.

<?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>

Opmerkingen

Note

De Load methode behoudt altijd aanzienlijke witruimte. De PreserveWhitespace eigenschap bepaalt of onbelangrijke witruimte, die witruimte is in elementinhoud, behouden blijft. De standaardwaarde is false; witruimte in elementinhoud blijft niet behouden.

Als de lezer de oorspronkelijke status =ReadState ReadState.Initial heeft, Load wordt de volledige inhoud van de lezer gebruikt en wordt de DOM gebouwd op basis van wat wordt gevonden.

Als de lezer al op een bepaald knooppunt op diepte 'n' staat, wordt dat knooppunt en alle volgende knooppunten geladen tot aan de eindtag die diepte n sluit. Dit heeft de volgende resultaten.

Als het huidige knooppunt en de bijbehorende broers en zussen er als volgt uitzien:

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

Load genereert een uitzondering omdat een document geen twee hoofdelementen kan bevatten. Als het huidige knooppunt en de bijbehorende broers en zussen er als volgt uitzien:

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

Load slaagt, maar u hebt een onvolledige DOM-structuur omdat er geen hoofdniveauelement is. Voordat u het document opslaat, moet u een element op hoofdniveau toevoegen, anders Save wordt er een uitzondering gegenereerd.

Als de lezer is geplaatst op een bladknooppunt dat ongeldig is voor het hoofdniveau van een document, bijvoorbeeld een witruimte of kenmerkknooppunt, blijft de lezer lezen totdat deze is geplaatst op een knooppunt dat kan worden gebruikt voor de hoofdmap. Het document wordt nu geladen.

Als u validatie wilt uitvoeren, kunt u een validatie-exemplaar XmlReader maken met behulp van de XmlReaderSettings klasse en de Create methode. Zie de sectie Opmerkingen van de XmlReader referentiepagina voor meer informatie.

Deze methode is een Microsoft extensie voor het Document Object Model (DOM).

Zie ook

Van toepassing op