Teilen über


XDocument.Parse Methode

Definition

Erstellt ein neues XDocument aus einer Zeichenfolge, wobei optional Leerraum und Zeileninformationen beibehalten werden und der Basis-URI festgelegt wird.

Überlädt

Parse(String)

Erstellt ein neues XDocument aus einer Zeichenfolge.

Parse(String, LoadOptions)

Erstellt ein neues XDocument aus einer Zeichenfolge, wobei optional Leerraum und Zeileninformationen beibehalten werden und der Basis-URI festgelegt wird.

Beispiele

Im folgenden Beispiel wird eine Zeichenfolge erstellt, die XML enthält. Anschließend analysiert er die Zeichenfolge in eine XDocument.

string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
    <Child>Content</Child>
</Root>";
XDocument doc = XDocument.Parse(str);
Console.WriteLine(doc);
Dim str As String = _
    "<?xml version= '1.0'?>" & _
    "<!-- comment at the root level -->" & _
    "<Root>" & _
    "  <Child>Content</Child>" & _
    "</Root>"

Dim doc As XDocument = XDocument.Parse(str)
Console.WriteLine(doc)

Dieses Beispiel erzeugt die folgende Ausgabe:

<!-- comment at the root level -->
<Root>
  <Child>Content</Child>
</Root>

Hinweise

Diese Methode analysiert eine Zeichenfolge und erstellt eine XML-Struktur.

Parse(String)

Quelle:
XDocument.cs
Quelle:
XDocument.cs
Quelle:
XDocument.cs

Erstellt ein neues XDocument aus einer Zeichenfolge.

public:
 static System::Xml::Linq::XDocument ^ Parse(System::String ^ text);
public static System.Xml.Linq.XDocument Parse (string text);
static member Parse : string -> System.Xml.Linq.XDocument
Public Shared Function Parse (text As String) As XDocument

Parameter

text
String

Eine Zeichenfolge, die XML enthält.

Gibt zurück

Ein XDocument, das aus der Zeichenfolge aufgefüllt wird, die XML enthält.

Beispiele

Im folgenden Beispiel wird eine Zeichenfolge erstellt, die XML enthält. Anschließend analysiert er die Zeichenfolge in eine XDocument.

string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
    <Child>Content</Child>
</Root>";
XDocument doc = XDocument.Parse(str);
Console.WriteLine(doc);
Dim str As String = _
    "<?xml version= '1.0'?>" & _
    "<!-- comment at the root level -->" & _
    "<Root>" & _
    "  <Child>Content</Child>" & _
    "</Root>"

Dim doc As XDocument = XDocument.Parse(str)
Console.WriteLine(doc)

Dieses Beispiel erzeugt die folgende Ausgabe:

<!-- comment at the root level -->
<Root>
  <Child>Content</Child>
</Root>

Hinweise

Bei dieser Methode wird kein Leerzeichen beibehalten. Wenn Sie Leerzeichen in der XML-Struktur beibehalten möchten, verwenden Sie die Überladung von, die Parse als Parameter akzeptiert LoadOptions .

Weitere Informationen finden Sie unter Beibehalten von Leerraum beim Laden oder Analysieren von XML und Beibehalten von Leerraum beim Serialisieren.

die Ladefunktion von LINQ to XML basiert auf XmlReader. Daher können Sie alle Ausnahmen abfangen, die von den XmlReader.Create Überladungsmethoden und den Methoden ausgelöst werden, die XmlReader das Dokument lesen und analysieren.

Weitere Informationen

Gilt für:

Parse(String, LoadOptions)

Quelle:
XDocument.cs
Quelle:
XDocument.cs
Quelle:
XDocument.cs

Erstellt ein neues XDocument aus einer Zeichenfolge, wobei optional Leerraum und Zeileninformationen beibehalten werden und der Basis-URI festgelegt wird.

public:
 static System::Xml::Linq::XDocument ^ Parse(System::String ^ text, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XDocument Parse (string text, System.Xml.Linq.LoadOptions options);
static member Parse : string * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XDocument
Public Shared Function Parse (text As String, options As LoadOptions) As XDocument

Parameter

text
String

Eine Zeichenfolge, die XML enthält.

options
LoadOptions

Ein LoadOptions, das Leerraumverhalten angibt und festlegt, ob Basis-URI- und Zeileninformationen geladen werden.

Gibt zurück

Ein XDocument, das aus der Zeichenfolge aufgefüllt wird, die XML enthält.

Beispiele

Im folgenden Beispiel wird eine Zeichenfolge in eine XDocumentanalysiert.

string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
    <Child>Content</Child>
</Root>";
XDocument doc1 = XDocument.Parse(str, LoadOptions.PreserveWhitespace);
Console.WriteLine("nodes when preserving whitespace: {0}", doc1.DescendantNodes().Count());
XDocument doc2 = XDocument.Parse(str, LoadOptions.None);
Console.WriteLine("nodes when not preserving whitespace: {0}", doc2.DescendantNodes().Count());
Dim str As String = _
"<?xml version= '1.0'?>" & Environment.NewLine & _
"<!-- comment at the root level -->" & Environment.NewLine & _
"<Root>" & Environment.NewLine & _
"    <Child>Content</Child>"  & Environment.NewLine & _
"</Root>"

Dim doc1 As XDocument = XDocument.Parse(str, LoadOptions.PreserveWhitespace)
Console.WriteLine("nodes when preserving whitespace: {0}", doc1.DescendantNodes().Count())
Dim doc2 As XDocument = XDocument.Parse(str, LoadOptions.None)
Console.WriteLine("nodes when not preserving whitespace: {0}", doc2.DescendantNodes().Count())

Dieses Beispiel erzeugt die folgende Ausgabe:

nodes when preserving whitespace: 8
nodes when not preserving whitespace: 4

Hinweise

Wenn die Quell-XML eingezogen ist, führt das Festlegen des PreserveWhitespace Flags in options dazu, dass der Reader alle Leerzeichen in der Quell-XML liest. Knoten vom Typ XText werden sowohl für signifikante als auch für unbedeutende Leerräume erstellt.

Wenn die Quell-XML eingezogen ist, führt das Festlegen des PreserveWhitespace Flags in options dazu, dass der Reader alle unbedeutenden Leerzeichen in der Quell-XML ignoriert. Die XML-Struktur wird ohne Textknoten für unbedeutende Leerzeichen erstellt.

Wenn die Quell-XML nicht eingerückt ist, hat das Festlegen des PreserveWhitespace Flags in options keine Auswirkungen. Ein erheblicher Leerraum bleibt erhalten, und es gibt keine Spannen von unbedeutenden Leerzeichen, die zur Erstellung von mehr Leerraumtextknoten führen könnten.

Weitere Informationen finden Sie unter Beibehalten von Leerraum beim Laden oder Analysieren von XML und Beibehalten von Leerraum beim Serialisieren.

Die Einstellung SetBaseUri ist nicht gültig, wenn aus einem Stringanalysiert wird.

Wenn Sie das Flag festlegen, tritt eine Leistungseinbuße auf SetLineInfo .

Die Zeileninformationen sind unmittelbar nach dem Laden des XML-Dokuments korrekt. Wenn Sie die XML-Struktur nach dem Laden des Dokuments ändern, können die Zeileninformationen bedeutungslos werden.

die Ladefunktion von LINQ to XML basiert auf XmlReader. Daher können Sie alle Ausnahmen abfangen, die von den XmlReader.Create Überladungsmethoden und den Methoden ausgelöst werden, die XmlReader das Dokument lesen und analysieren.

Weitere Informationen

Gilt für: