XDocument.Parse Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria um novo XDocument de uma cadeia de caracteres, com a opção de preservar espaços em branco, definir o URI base e reter as informações de linha.
Sobrecargas
Parse(String) |
Cria um novo XDocument com base em uma cadeia de caracteres. |
Parse(String, LoadOptions) |
Cria um novo XDocument de uma cadeia de caracteres, com a opção de preservar espaços em branco, definir o URI base e reter as informações de linha. |
Exemplos
O exemplo a seguir cria uma cadeia de caracteres que contém XML. Em seguida, ele analisa a cadeia de caracteres em um 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)
Esse exemplo gera a saída a seguir:
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>
Comentários
Esse método analisa uma cadeia de caracteres e cria uma árvore XML.
Parse(String)
Cria um novo XDocument com base em uma cadeia de caracteres.
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 de caracteres que contém XML.
Retornos
Um XDocument populado com base na cadeia de caracteres que contém o XML.
Exemplos
O exemplo a seguir cria uma cadeia de caracteres que contém XML. Em seguida, ele analisa a cadeia de caracteres em um 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)
Esse exemplo gera a saída a seguir:
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>
Comentários
Esse método não preserva o espaço em branco. Se você quiser preservar o espaço em branco na árvore XML, use a sobrecarga que Parse usa LoadOptions como parâmetro.
Para obter 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 to XML é criada.XmlReader Portanto, você pode capturar quaisquer exceções geradas pelos XmlReader.Create métodos de sobrecarga e pelos XmlReader métodos que leem e analisam o documento.
Confira também
Aplica-se a
Parse(String, LoadOptions)
Cria um novo XDocument de uma cadeia de caracteres, com a opção de preservar espaços em branco, definir o URI base e reter as informações de 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 de caracteres que contém XML.
- options
- LoadOptions
LoadOptions que especificam o comportamento de espaço em branco e se serão carregadas as informações de linha e o URI base.
Retornos
Um XDocument populado com base na cadeia de caracteres que contém o XML.
Exemplos
O exemplo a seguir analisa uma cadeia de caracteres em um 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())
Esse exemplo gera a saída a seguir:
nodes when preserving whitespace: 8
nodes when not preserving whitespace: 4
Comentários
Se o XML de origem estiver recuado, definir o PreserveWhitespace sinalizador options
fará com que o leitor leia todo o espaço em branco no XML de origem. Nós de tipo XText são criados para espaço em branco significativo e insignificante.
Se o XML de origem estiver recuado, não definir o PreserveWhitespace sinalizador options
fará com que o leitor ignore todo o espaço em branco insignificante no XML de origem. A árvore XML é criada sem nenhum nó de texto para espaço em branco insignificante.
Se o XML de origem não estiver recuado, a configuração do PreserveWhitespace sinalizador options
não terá efeito. Espaço em branco significativo ainda é preservado, e não há intervalos de espaço em branco insignificante que possam causar a criação de mais nós de texto de espaço em branco.
Para obter 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 configuração SetBaseUri não é válida ao analisar de um String.
Haverá uma penalidade de desempenho se você definir o SetLineInfo sinalizador.
As informações de linha são precisas imediatamente após o carregamento do documento XML. Se você modificar a árvore XML depois de carregar o documento, as informações de linha poderão se tornar sem sentido.
A funcionalidade de carregamento do LINQ to XML é criada.XmlReader Portanto, você pode capturar quaisquer exceções geradas pelos XmlReader.Create métodos de sobrecarga e pelos XmlReader métodos que leem e analisam o documento.