XmlNodeReader.ReadString Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Lê o conteúdo de um elemento ou nó de texto como uma cadeia de caracteres.
public:
override System::String ^ ReadString();
public override string ReadString();
override this.ReadString : unit -> string
Public Overrides Function ReadString () As String
Devoluções
O conteúdo do elemento ou nó semelhante a um texto (isto pode incluir CDATA, nós de texto, e assim por diante). Esta pode ser uma cadeia vazia se o leitor estiver posicionado em algo que não seja um elemento ou nó de texto, ou se não houver mais conteúdo de texto para devolver no contexto atual.
Note: O nó de texto pode ser tanto um elemento como um nó de texto de atributo.
Exemplos
O exemplo seguinte mostra o conteúdo textual de cada um dos elementos.
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlNodeReader reader = null;
try
{
//Create and load the XML document.
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book>" +
"<title>Pride And Prejudice</title>" +
"<price>19.95</price>" +
"<misc/>" +
"</book>");
//Load the XmlNodeReader
reader = new XmlNodeReader(doc);
//Parse the XML and display the text content of each of the elements.
while (reader.Read()){
if (reader.IsStartElement()){
if (reader.IsEmptyElement)
{
Console.WriteLine("<{0}/>", reader.Name);
}
else
{
Console.Write("<{0}> ", reader.Name);
reader.Read(); //Read the start tag.
if (reader.IsStartElement()) //Handle nested elements.
Console.Write("\r\n<{0}>", reader.Name);
Console.WriteLine(reader.ReadString()); //Read the text content of the element.
}
}
}
}
finally
{
if (reader != null)
reader.Close();
}
}
} // End class
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim reader As XmlNodeReader = Nothing
Try
'Create and load the XML document.
Dim doc As New XmlDocument()
doc.LoadXml("<book>" & _
"<title>Pride And Prejudice</title>" & _
"<price>19.95</price>" & _
"<misc/>" & _
"</book>")
'Load the XmlNodeReader
reader = New XmlNodeReader(doc)
'Parse the XML and display the text content of each of the elements.
While reader.Read()
If reader.IsStartElement() Then
If reader.IsEmptyElement Then
Console.WriteLine("<{0}/>", reader.Name)
Else
Console.Write("<{0}> ", reader.Name)
reader.Read() 'Read the start tag.
If (reader.IsStartElement()) 'Handle nested elements.
Console.WriteLine()
Console.Write("<{0}>", reader.Name)
End If
Console.WriteLine(reader.ReadString()) 'Read the text content of the element.
End If
End If
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
Observações
Note
Para tirar partido das funcionalidades mais recentes, a prática recomendada é criar XmlReader instâncias usando a XmlReaderSettings classe e o Create método. Para mais informações, consulte a secção de Observações na XmlReader página de referência.
Se posicionado num elemento, ReadString concatena todos os tipos de texto, espaços em branco significativos, espaços em branco e nós de secção CData e devolve os dados concatenados como conteúdo do elemento. Para quando surge qualquer marcação. Isto pode ocorrer num modelo de conteúdo misto, ou quando uma etiqueta final de elemento é lida.
Se posicionado num nó semelhante a texto, ReadString realiza a mesma concatenação do nó de texto para a etiqueta final do elemento. Se o leitor estiver posicionado num nó de texto de atribuido, ReadString tem a mesma funcionalidade que se o leitor estivesse posicionado na etiqueta de início do elemento. Devolve todos os nós de texto dos elementos concatenados.