XmlReader Classe

Definição

Representa um leitor que fornece acesso rápido não armazenado em cache e somente de encaminhamento aos dados XML.

public ref class XmlReader abstract : IDisposable
public ref class XmlReader abstract
public abstract class XmlReader : IDisposable
public abstract class XmlReader
type XmlReader = class
    interface IDisposable
type XmlReader = class
Public MustInherit Class XmlReader
Implements IDisposable
Public MustInherit Class XmlReader
Herança
XmlReader
Derivado
Implementações

Exemplos

O código de exemplo a seguir mostra como usar a API assíncrona para analisar XML.

async Task TestReader(System.IO.Stream stream)
{
    XmlReaderSettings settings = new XmlReaderSettings();
    settings.Async = true;

    using (XmlReader reader = XmlReader.Create(stream, settings))
    {
        while (await reader.ReadAsync())
        {
            switch (reader.NodeType)
            {
                case XmlNodeType.Element:
                    Console.WriteLine("Start Element {0}", reader.Name);
                    break;
                case XmlNodeType.Text:
                    Console.WriteLine("Text Node: {0}",
                             await reader.GetValueAsync());
                    break;
                case XmlNodeType.EndElement:
                    Console.WriteLine("End Element {0}", reader.Name);
                    break;
                default:
                    Console.WriteLine("Other node {0} with value {1}",
                                    reader.NodeType, reader.Value);
                    break;
            }
        }
    }
}
Public Async Function TestReader(stream As System.IO.Stream) As Task
    Dim settings As New XmlReaderSettings()
    settings.Async = True

    Using reader As XmlReader = XmlReader.Create(stream, settings)
        While (Await reader.ReadAsync())
            Select Case (reader.NodeType)
                Case XmlNodeType.Element
                    Console.WriteLine("Start Element {0}", reader.Name)
                Case XmlNodeType.Text
                    Console.WriteLine("Text Node: {0}",
                             Await reader.GetValueAsync())
                Case XmlNodeType.EndElement
                    Console.WriteLine("End Element {0}", reader.Name)
                Case Else
                    Console.WriteLine("Other node {0} with value {1}",
                                    reader.NodeType, reader.Value)
            End Select
        End While
    End Using
End Function

Comentários

Para obter mais informações sobre essa API, consulte Comentários sobre a API Complementar para XmlReader.

Construtores

XmlReader()

Inicializa uma nova instância da classe XmlReader.

Propriedades

AttributeCount

Quando substituído em uma classe derivada, obtém o número de atributos no nó atual.

BaseURI

Quando substituído em uma classe derivada, obtém o URI base do nó atual.

CanReadBinaryContent

Obtém um valor que indica se o XmlReader implementa os métodos de leitura de conteúdo binário.

CanReadValueChunk

Obtém um valor que indica se o XmlReader implementa o método ReadValueChunk(Char[], Int32, Int32).

CanResolveEntity

Obtém um valor que indica se este leitor pode analisar e resolver entidades.

Depth

Quando é substituído em uma classe derivada, obtém a profundidade do nó atual no documento XML.

EOF

Quando substituído em uma classe derivada, obtém um valor que indica se o leitor está posicionado no final do fluxo.

HasAttributes

Obtém um valor que indica se o nó atual tem atributos.

HasValue

Quando substituído em uma classe derivada, obtém um valor que indica se o nó atual pode ter um Value.

IsDefault

Quando substituído em uma classe derivada, obtém um valor que indica se o nó atual é um atributo que foi gerado com base no valor padrão definido no DTD ou no esquema.

IsEmptyElement

Quando substituído em uma classe derivada, obtém um valor que indica se o nó atual é um elemento vazio (por exemplo, <MyElement/>).

Item[Int32]

Quando substituído em uma classe derivada, obtém o valor do atributo com o índice especificado.

Item[String, String]

Quando substituído em uma classe derivada, obtém o valor do atributo com o LocalName e o NamespaceURI especificados.

Item[String]

Quando substituído em uma classe derivada, obtém o valor do atributo com o Name especificado.

LocalName

Quando é substituído em uma classe derivada, obtém o nome local do nó atual.

Name

Quando é substituído em uma classe derivada, obtém o nome qualificado do nó atual.

NamespaceURI

Quando substituído em uma classe derivada, obtém o URI do namespace (conforme definido na especificação de Namespace do W3C) do nó no qual o leitor está posicionado.

NameTable

Quando substituído em uma classe derivada, obtém o XmlNameTable associado a essa implementação.

NodeType

Quando é substituído em uma classe derivada, obtém o tipo do nó atual.

Prefix

Quando substituído em uma classe derivada, obtém o prefixo de namespace associado com o nó atual.

QuoteChar

Quando substituído em uma classe derivada, obtém o caractere de aspas usado para circunscrever o valor de um nó de atributo.

ReadState

Quando substituído em uma classe derivada, obtém o estado do leitor.

SchemaInfo

Obtém as informações de esquema que foram atribuídas ao nó atual como resultado da validação de esquema.

Settings

Obtém o objeto XmlReaderSettings usado para criar essa instância XmlReader.

Value

Quando é substituído em uma classe derivada, obtém o valor do texto do nó atual.

ValueType

Obtém o tipo CLR (Common Language Runtime) para o nó atual.

XmlLang

Quando substituído em uma classe derivada, obtém o escopo xml:lang atual.

XmlSpace

Quando substituído em uma classe derivada, obtém o escopo xml:space atual.

Métodos

Close()

Quando substituído em uma classe derivada, altera o ReadState para Closed.

Create(Stream)

Cria uma nova instância XmlReader usando o fluxo especificado com as configurações padrão.

Create(Stream, XmlReaderSettings)

Cria uma nova instância XmlReader com as configurações e o fluxo especificado.

Create(Stream, XmlReaderSettings, String)

Cria uma nova instância XmlReader usando o fluxo, o URI base e as configurações especificadas.

Create(Stream, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de fluxo, configurações e contexto especificadas para análise.

Create(String)

Cria uma nova instância XmlReader com o URI especificado.

Create(String, XmlReaderSettings)

Cria uma nova instância XmlReader usando o URI e as configurações especificados.

Create(String, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de URI, de configurações e de contexto especificadas para análise.

Create(TextReader)

Cria uma nova instância de XmlReader usando o leitor de texto especificado.

Create(TextReader, XmlReaderSettings)

Cria uma nova instância do XmlReader usando as configurações e o leitor de texto especificados.

Create(TextReader, XmlReaderSettings, String)

Cria uma nova instância XmlReader usando o leitor de texto especificado, as configurações e o URI base.

Create(TextReader, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de contexto, de configurações e do leitor de texto especificadas para análise.

Create(XmlReader, XmlReaderSettings)

Cria uma nova instância XmlReader usando as configurações e o leitor XML especificados.

Dispose()

Libera todos os recursos usados pela instância atual da classe XmlReader.

Dispose(Boolean)

Libera os recursos não gerenciados usados pelo XmlReader e opcionalmente libera os recursos gerenciados.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetAttribute(Int32)

Quando substituído em uma classe derivada, obtém o valor do atributo com o índice especificado.

GetAttribute(String)

Quando substituído em uma classe derivada, obtém o valor do atributo com o Name especificado.

GetAttribute(String, String)

Quando substituído em uma classe derivada, obtém o valor do atributo com o LocalName e o NamespaceURI especificados.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetValueAsync()

Obtém o valor do nó atual de forma assíncrona.

IsName(String)

Retorna um valor que indica se o argumento de cadeia de caracteres é um nome XML válido.

IsNameToken(String)

Retorna um valor que indica se o argumento de cadeia de caracteres é um token de nome XML válido.

IsStartElement()

Chama MoveToContent() e testa se o nó de conteúdo atual é uma marca de início ou uma marca de elemento vazia.

IsStartElement(String)

Chama MoveToContent() e testa se o nó de conteúdo atual é uma marca de início ou uma marca de elemento vazio e se a propriedade Name que o elemento encontrou corresponde ao argumento fornecido.

IsStartElement(String, String)

Chama MoveToContent() e testa se o nó de conteúdo atual é uma marca de início ou uma marca de elemento vazio e, se as propriedades LocalName e NamespaceURI do elemento encontrado correspondem às cadeias de caracteres fornecidas.

LookupNamespace(String)

Quando substituído em uma classe derivada, resolve um prefixo de namespace no escopo do elemento atual.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
MoveToAttribute(Int32)

Quando substituído em uma classe derivada, é movido para o atributo com o índice especificado.

MoveToAttribute(String)

Quando substituído em uma classe derivada, é movido para o atributo com o Name especificado.

MoveToAttribute(String, String)

Quando substituído em uma classe derivada, passa para o atributo com os LocalName e NamespaceURI especificados.

MoveToContent()

Verifica se o nó atual é um nó de conteúdo (texto sem espaço em branco, CDATA, Element, EndElement, EntityReference ou EndEntity). Se o nó não for um nó de conteúdo, o leitor avançará para o próximo nó de conteúdo ou para o final do arquivo. Pula nós de tipo seguir: ProcessingInstruction, DocumentType, Comment, Whitespace, ou SignificantWhitespace.

MoveToContentAsync()

Verifica de forma assíncrona se o nó atual é um nó de conteúdo. Se o nó não for um nó de conteúdo, o leitor avançará para o próximo nó de conteúdo ou para o final do arquivo.

MoveToElement()

Quando substituído em uma classe derivada, move para o elemento que contém o nó de atributo atual.

MoveToFirstAttribute()

Quando substituído em uma classe derivada, move o primeiro atributo.

MoveToNextAttribute()

Quando substituído em uma classe derivada, vai para o atributo seguinte.

Read()

Quando substituído em uma classe derivada, lê o próximo nó do fluxo.

ReadAsync()

Lê assincronamente o próximo nó do fluxo.

ReadAttributeValue()

Quando substituído em uma classe derivada, analisa o valor do atributo em um ou mais nós Text, EntityReference ou EndEntity.

ReadContentAs(Type, IXmlNamespaceResolver)

Lê o conteúdo como um objeto do tipo especificado.

ReadContentAsAsync(Type, IXmlNamespaceResolver)

Lê de forma assíncrona o conteúdo como um objeto do tipo especificado.

ReadContentAsBase64(Byte[], Int32, Int32)

Lê o conteúdo e retorna os bytes binários decodificados de Base64.

ReadContentAsBase64Async(Byte[], Int32, Int32)

Lê de forma assíncrona o conteúdo e retorna que os bytes binários decodificados de Base64.

ReadContentAsBinHex(Byte[], Int32, Int32)

Lê o conteúdo e retorna os bytes binários decodificados BinHex.

ReadContentAsBinHexAsync(Byte[], Int32, Int32)

Lê de forma assíncrona o conteúdo e retorna os bytes binários decodificados BinHex.

ReadContentAsBoolean()

Lê o conteúdo de texto na posição atual como um Boolean.

ReadContentAsDateTime()

Lê o conteúdo de texto na posição atual como um objeto DateTime.

ReadContentAsDateTimeOffset()

Lê o conteúdo de texto na posição atual como um objeto DateTimeOffset.

ReadContentAsDecimal()

Lê o conteúdo de texto na posição atual como um objeto Decimal.

ReadContentAsDouble()

Lê o conteúdo de texto na posição atual como um número de ponto flutuante de precisão dupla.

ReadContentAsFloat()

Lê o conteúdo de texto na posição atual como um número de ponto flutuante de precisão simples.

ReadContentAsInt()

Lê o conteúdo de texto na posição atual como um inteiro com sinal de 32 bits.

ReadContentAsLong()

Lê o conteúdo de texto na posição atual como um inteiro com sinal de 64 bits.

ReadContentAsObject()

Lê o conteúdo do texto na posição atual como um Object.

ReadContentAsObjectAsync()

Lê de forma assíncrona o conteúdo do texto na posição atual como um Object.

ReadContentAsString()

Lê o conteúdo de texto na posição atual como um objeto String.

ReadContentAsStringAsync()

Lê de forma assíncrona o conteúdo do texto na posição atual como um objeto String.

ReadElementContentAs(Type, IXmlNamespaceResolver)

Lê o conteúdo do elemento como o tipo solicitado.

ReadElementContentAs(Type, IXmlNamespaceResolver, String, String)

Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual e, em seguida, lê o conteúdo do elemento atual como o tipo solicitado.

ReadElementContentAsAsync(Type, IXmlNamespaceResolver)

Lê de forma assíncrona o conteúdo do elemento como o tipo solicitado.

ReadElementContentAsBase64(Byte[], Int32, Int32)

Lê o elemento e decodifica o conteúdo de Base64.

ReadElementContentAsBase64Async(Byte[], Int32, Int32)

Lê de forma assíncrona o elemento e decodifica o conteúdo Base64.

ReadElementContentAsBinHex(Byte[], Int32, Int32)

Lê o elemento e decodifica o conteúdo de BinHex.

ReadElementContentAsBinHexAsync(Byte[], Int32, Int32)

Lê de forma assíncrona o elemento e decodifica o conteúdo BinHex.

ReadElementContentAsBoolean()

Lê o elemento atual e retorna o conteúdo como um objeto Boolean.

ReadElementContentAsBoolean(String, String)

Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto Boolean.

ReadElementContentAsDateTime()

Lê o elemento atual e retorna o conteúdo como um objeto DateTime.

ReadElementContentAsDateTime(String, String)

Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto DateTime.

ReadElementContentAsDecimal()

Lê o elemento atual e retorna o conteúdo como um objeto Decimal.

ReadElementContentAsDecimal(String, String)

Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto Decimal.

ReadElementContentAsDouble()

Lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão dupla.

ReadElementContentAsDouble(String, String)

Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão dupla.

ReadElementContentAsFloat()

Lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão simples.

ReadElementContentAsFloat(String, String)

Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão simples.

ReadElementContentAsInt()

Lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 32 bits.

ReadElementContentAsInt(String, String)

Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 32 bits.

ReadElementContentAsLong()

Lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 64 bits.

ReadElementContentAsLong(String, String)

Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 64 bits.

ReadElementContentAsObject()

Lê o elemento atual e retorna os conteúdos como um Object.

ReadElementContentAsObject(String, String)

Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um Object.

ReadElementContentAsObjectAsync()

Lê de forma assíncrona o elemento atual e retorna o conteúdo como um Object.

ReadElementContentAsString()

Lê o elemento atual e retorna o conteúdo como um objeto String.

ReadElementContentAsString(String, String)

Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto String.

ReadElementContentAsStringAsync()

Lê de forma assíncrona o elemento atual e retorna o conteúdo como um objeto String.

ReadElementString()

Lê um elemento somente texto. No entanto, é recomendável que você use o método ReadElementContentAsString() em vez disso, porque ele fornece uma maneira mais simples de lidar com essa operação.

ReadElementString(String)

Verifica se a propriedade Name do elemento encontrado corresponde à cadeia de caracteres fornecida antes de ler um elemento somente texto. No entanto, é recomendável que você use o método ReadElementContentAsString() em vez disso, porque ele fornece uma maneira mais simples de lidar com essa operação.

ReadElementString(String, String)

Verifica se as propriedades LocalName e NamespaceURI do elemento encontrado correspondem às cadeias de caracteres fornecidas antes de ler um elemento somente de texto. No entanto, é recomendável que você use o método ReadElementContentAsString(String, String) em vez disso, porque ele fornece uma maneira mais simples de lidar com essa operação.

ReadEndElement()

Verifica se o nó de conteúdo atual é uma marca de fim e avança o leitor para o próximo nó.

ReadInnerXml()

Quando substituído em uma classe derivada, lê todo o conteúdo, incluindo a marcação, como uma cadeia de caracteres.

ReadInnerXmlAsync()

Lê de forma assíncrona todo o conteúdo, inclusive a marcação, como uma cadeia de caracteres.

ReadOuterXml()

Quando substituído em uma classe derivada, lê o conteúdo, inclusive a marcação, que representa esse nó e todos os seus filhos.

ReadOuterXmlAsync()

Lê de forma assíncrona o conteúdo, inclusive a marcação, representando este nó e todos os seus filhos.

ReadStartElement()

Verifica se o nó atual é um elemento e avança o leitor para o próximo nó.

ReadStartElement(String)

Verifica se o nó de conteúdo atual é um elemento com o Name fornecido e avança o leitor para o próximo nó.

ReadStartElement(String, String)

Verifica se o nó de conteúdo atual é um elemento com o LocalName e NamespaceURI fornecidos e avança o leitor para o próximo nó.

ReadString()

Quando substituído em uma classe derivada, lê o conteúdo de um nó de elemento ou texto como uma cadeia de caracteres. No entanto, é recomendável que você use o método ReadElementContentAsString em vez disso, porque ele fornece uma maneira mais simples de lidar com essa operação.

ReadSubtree()

Retorna uma nova instância XmlReader que pode ser usada para ler o nó atual e todos os seus descendentes.

ReadToDescendant(String)

Avança o XmlReader para o próximo elemento descendente com o nome qualificado especificado.

ReadToDescendant(String, String)

Avança o XmlReader para o próximo elemento descendente com o nome local e URI do namespace especificados.

ReadToFollowing(String)

Lê até que seja encontrado um elemento com o nome qualificado especificado.

ReadToFollowing(String, String)

Lê até que seja encontrado um elemento com o nome do local e o URI do namespace especificados.

ReadToNextSibling(String)

Avança o XmlReader para o próximo elemento irmão com o nome qualificado especificado.

ReadToNextSibling(String, String)

Avança o XmlReader para o próximo elemento irmão com o nome local e o URI de namespace especificados.

ReadValueChunk(Char[], Int32, Int32)

Lê grandes fluxos de texto inseridos em um documento XML.

ReadValueChunkAsync(Char[], Int32, Int32)

Lê de forma assíncrona grandes fluxos de texto inserido em um documento XML.

ResolveEntity()

Quando substituído em uma classe derivada, resolve a referência da entidade para nós EntityReference.

Skip()

Ignora os filhos do nó atual.

SkipAsync()

Ignora de forma assíncrona os filhos do nó atual.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

IDisposable.Dispose()

Para obter uma descrição desse membro, confira Dispose().

Aplica-se a

Confira também