XDocument.Parse Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar en ny XDocument från en sträng, om du vill bevara tomt utrymme, ange bas-URI och behålla radinformation.
Överlagringar
| Name | Description |
|---|---|
| Parse(String) |
Skapar en ny XDocument från en sträng. |
| Parse(String, LoadOptions) |
Skapar en ny XDocument från en sträng, om du vill bevara tomt utrymme, ange bas-URI och behålla radinformation. |
Exempel
I följande exempel skapas en sträng som innehåller XML. Sedan parsar den strängen till en 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)
Det här exemplet genererar följande utdata:
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>
Kommentarer
Den här metoden parsar en sträng och skapar ett XML-träd.
Parse(String)
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
Skapar en ny XDocument från en sträng.
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
Parametrar
- text
- String
En sträng som innehåller XML.
Returer
En XDocument ifylld från strängen som innehåller XML.
Exempel
I följande exempel skapas en sträng som innehåller XML. Sedan parsar den strängen till en 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)
Det här exemplet genererar följande utdata:
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>
Kommentarer
Den här metoden bevarar inte tomt utrymme. Om du vill bevara tomt utrymme i XML-trädet använder du överlagringen av Parse det som tar LoadOptions som en parameter.
Mer information finns i Bevara tomt utrymme vid inläsning eller parsning av XML och Bevara tomt utrymme vid serialisering.
LINQ till XML:s inläsningsfunktioner bygger på XmlReader. Därför kan du fånga eventuella undantag som genereras av överlagringsmetoderna XmlReader.Create och de XmlReader metoder som läser och parsar dokumentet.
Se även
Gäller för
Parse(String, LoadOptions)
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
- Källa:
- XDocument.cs
Skapar en ny XDocument från en sträng, om du vill bevara tomt utrymme, ange bas-URI och behålla radinformation.
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
Parametrar
- text
- String
En sträng som innehåller XML.
- options
- LoadOptions
A LoadOptions som anger beteende för tomt utrymme och om bas-URI och radinformation ska läsas in.
Returer
En XDocument ifylld från strängen som innehåller XML.
Exempel
I följande exempel parsas en sträng i en XDocument.
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())
Det här exemplet genererar följande utdata:
nodes when preserving whitespace: 8
nodes when not preserving whitespace: 4
Kommentarer
Om käll-XML:en är indragen gör inställningen PreserveWhitespace av flaggan i options att läsaren läser allt tomt utrymme i käll-XML:en. Noder av typen XText skapas för både betydande och obetydligt tomt utrymme.
Om käll-XML:en är indragen, gör inte inställningen PreserveWhitespace av flaggan i options att läsaren ignorerar allt obetydligt tomt utrymme i käll-XML:en. XML-trädet skapas utan textnoder för obetydligt tomt utrymme.
Om käll-XML inte är indraget har det ingen effekt att ange PreserveWhitespace flaggan i options . Betydande tomt utrymme bevaras fortfarande, och det finns inga intervall med obetydligt tomt utrymme som kan orsaka skapandet av fler blankstegstextnoder.
Mer information finns i Bevara tomt utrymme vid inläsning eller parsning av XML och Bevara tomt utrymme vid serialisering.
Inställningen SetBaseUri är inte giltig när du parsar från en String.
Det finns ett prestandastraff om du anger SetLineInfo flaggan.
Radinformationen är korrekt omedelbart efter att XML-dokumentet har lästs in. Om du ändrar XML-trädet när du har läst in dokumentet kan radinformationen bli meningslös.
LINQ till XML:s inläsningsfunktioner bygger på XmlReader. Därför kan du fånga eventuella undantag som genereras av överlagringsmetoderna XmlReader.Create och de XmlReader metoder som läser och parsar dokumentet.