XDocument.Parse Método

Definição

Cria um novo XDocument a partir de uma cadeia, preservando opcionalmente o espaço em branco, definindo o URI base e mantendo a informação da linha.

Sobrecargas

Name Description
Parse(String)

Cria um novo XDocument a partir de uma corda.

Parse(String, LoadOptions)

Cria um novo XDocument a partir de uma cadeia, preservando opcionalmente o espaço em branco, definindo o URI base e mantendo a informação da linha.

Exemplos

O exemplo seguinte cria uma cadeia que contém XML. Depois, analisa a cadeia num 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)

Este exemplo produz a seguinte saída:

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

Observações

Este método analisa uma cadeia e cria uma árvore XML.

Parse(String)

Origem:
XDocument.cs
Origem:
XDocument.cs
Origem:
XDocument.cs
Origem:
XDocument.cs
Origem:
XDocument.cs

Cria um novo XDocument a partir de uma corda.

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

Parâmetros

text
String

Uma cadeia que contém XML.

Devoluções

Um XDocument povoado a partir da string que contém XML.

Exemplos

O exemplo seguinte cria uma cadeia que contém XML. Depois, analisa a cadeia num 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)

Este exemplo produz a seguinte saída:

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

Observações

Este método não preserva o espaço em branco. Se quiseres preservar o espaço em branco na árvore XML, usa a sobrecarga de Parse isso LoadOptions como parâmetro.

Para mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e Preservar espaço em branco durante a serialização.

A funcionalidade de carregamento do LINQ para XML baseia-se em XmlReader. Portanto, pode detetar quaisquer exceções que sejam lançadas pelos XmlReader.Create métodos de sobrecarga e pelos XmlReader métodos que leem e analisam o documento.

Ver também

Aplica-se a

Parse(String, LoadOptions)

Origem:
XDocument.cs
Origem:
XDocument.cs
Origem:
XDocument.cs
Origem:
XDocument.cs
Origem:
XDocument.cs

Cria um novo XDocument a partir de uma cadeia, preservando opcionalmente o espaço em branco, definindo o URI base e mantendo a informação da linha.

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

Parâmetros

text
String

Uma cadeia que contém XML.

options
LoadOptions

A LoadOptions que especifica o comportamento em espaço em branco, e se deve carregar o URI base e a informação de linha.

Devoluções

Um XDocument povoado a partir da string que contém XML.

Exemplos

O exemplo seguinte analisa uma cadeia num 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())

Este exemplo produz a seguinte saída:

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

Observações

Se o XML de origem estiver indentado, ao definir a PreserveWhitespace flag em options faz com que o leitor leia todo o espaço em branco do XML de origem. Os nós de tipo XText são criados tanto para espaços em branco significativos como insignificantes.

Se o XML de origem estiver indentado, não definir a PreserveWhitespace flag options faz com que o leitor ignore todo o espaço em branco insignificante no XML de origem. A árvore XML é criada sem quaisquer nós de texto para espaço em branco insignificante.

Se o XML de origem não estiver indentado, definir a PreserveWhitespace flag não options tem efeito. Um espaço em branco significativo ainda está preservado, e não existem intervalos de espaços em branco insignificantes que possam causar a criação de mais nós de texto em espaços em branco.

Para mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e Preservar espaço em branco durante a serialização.

A definição SetBaseUri não é válida ao analisar a partir de um String.

Há uma penalização de desempenho se definires a SetLineInfo bandeira.

A informação da linha é precisa imediatamente após o carregamento do documento XML. Se modificar a árvore XML após carregar o documento, a informação da linha pode tornar-se insignificante.

A funcionalidade de carregamento do LINQ para XML baseia-se em XmlReader. Portanto, pode detetar quaisquer exceções que sejam lançadas pelos XmlReader.Create métodos de sobrecarga e pelos XmlReader métodos que leem e analisam o documento.

Ver também

Aplica-se a