XmlReader Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un lettore che fornisce accesso veloce, non in cache e di tipo forward-only ai dati 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
- Ereditarietà
-
XmlReader
- Derivato
- Implementazioni
Esempio
Il codice di esempio seguente illustra come usare l'API asincrona per analizzare 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
Commenti
Per altre informazioni su questa API, vedere Osservazioni api supplementari per XmlReader.
Costruttori
| XmlReader() |
Inizializza una nuova istanza della classe |
Proprietà
| AttributeCount |
Quando ne viene eseguito l'override in una classe derivata, ottiene il numero di attributi sul nodo corrente. |
| BaseURI |
Quando sottoposto a override in una classe derivata, ottiene l'URI di base del nodo corrente. |
| CanReadBinaryContent |
Ottiene un valore che indica se XmlReader implementa metodi di lettura del contenuto binario. |
| CanReadValueChunk |
Ottiene un valore che indica se XmlReader implementa il metodo ReadValueChunk(Char[], Int32, Int32). |
| CanResolveEntity |
Ottiene un valore che indica se il lettore può analizzare e risolvere le entità. |
| Depth |
Quando sottoposto a override in una classe derivata, ottiene la profondità del nodo corrente nel documento XML. |
| EOF |
Quando ne viene eseguito l'override in una classe derivata, ottiene un valore che indica se il lettore è posizionato alla fine del flusso. |
| HasAttributes |
Ottiene un valore che indica se il nodo corrente dispone di attributi. |
| HasValue |
Quando ne viene eseguito l'override in una classe derivata, ottiene un valore che indica se il nodo corrente può avere Value. |
| IsDefault |
Quando ne viene eseguito l'override in una classe derivata, ottiene un valore che indica se il nodo corrente è un attributo generato dal valore predefinito configurato nella definizione DTD o nello schema. |
| IsEmptyElement |
In caso di override in una classe derivata, ottiene un valore che indica se il nodo corrente è un elemento vuoto , ad esempio |
| Item[Int32] |
Quando ne viene eseguito l'override in una classe derivata, ottiene il valore dell'attributo con l'indice specificato. |
| Item[String, String] |
Quando sottoposto a override in una classe derivata, ottiene il valore dell'attributo con le proprietà LocalName e NamespaceURI specificate. |
| Item[String] |
Quando sottoposto a override in una classe derivata, ottiene il valore dell'attributo con la proprietà Name specificata. |
| LocalName |
Quando sottoposto a override in una classe derivata, ottiene il nome locale del nodo corrente. |
| Name |
Quando ne viene eseguito l'override in una classe derivata, ottiene il nome completo del nodo corrente. |
| NamespaceURI |
Quando sottoposto a override in una classe derivata, ottiene l'URI dello spazio dei nomi, definito nella specifica W3C Namespace, del nodo in corrispondenza del quale è posizionato il lettore. |
| NameTable |
Quando sottoposto a override in una classe derivata, ottiene l'oggetto XmlNameTable associato a questa implementazione. |
| NodeType |
Quando ne viene eseguito l'override in una classe derivata, ottiene il tipo del nodo corrente. |
| Prefix |
Quando sottoposto a override in una classe derivata, ottiene il prefisso dello spazio dei nomi associato al nodo corrente. |
| QuoteChar |
Quando sottoposto a override in una classe derivata, ottiene il carattere punto interrogativo (?) utilizzato per delimitare il valore di un nodo attributo. |
| ReadState |
Quando ne viene eseguito l'override in una classe derivata, ottiene lo stato del lettore. |
| SchemaInfo |
Ottiene le informazioni sullo schema assegnate al nodo corrente in seguito alla convalida dello schema. |
| Settings |
Ottiene l'oggetto XmlReaderSettings usato per creare questa istanza di XmlReader. |
| Value |
Quando ne viene eseguito l'override in una classe derivata, ottiene il valore del testo del nodo corrente. |
| ValueType |
Ottiene il tipo CLR (Common Language Runtime) relativo al nodo corrente. |
| XmlLang |
Quando ne viene eseguito l'override in una classe derivata, ottiene l'ambito |
| XmlSpace |
Quando ne viene eseguito l'override in una classe derivata, ottiene l'ambito |
Metodi
| Close() |
Quando ne viene eseguito l'override in una classe derivata, sostituisce ReadState con Closed. |
| Create(Stream) |
Crea una nuova istanza di XmlReader con il flusso specificato e le impostazioni predefinite. |
| Create(Stream, XmlReaderSettings) |
Crea una nuova istanza di XmlReader con il flusso e le impostazioni specificati. |
| Create(Stream, XmlReaderSettings, String) |
Crea una nuova istanza di XmlReader con il flusso, l'URI di base e le impostazioni specificati. |
| Create(Stream, XmlReaderSettings, XmlParserContext) |
Crea una nuova istanza di XmlReader con il flusso, le impostazioni e le informazioni di contesto specificati per l'analisi. |
| Create(String) |
Crea una nuova istanza di XmlReader con l'URI specificato. |
| Create(String, XmlReaderSettings) |
Crea una nuova istanza di XmlReader con l'URI e le impostazioni specificati. |
| Create(String, XmlReaderSettings, XmlParserContext) |
Crea una nuova istanza di XmlReader con l'URI, le impostazioni e le informazioni di contesto specificati per l'analisi. |
| Create(TextReader) |
Crea una nuova istanza di XmlReader con il lettore di testo specificato. |
| Create(TextReader, XmlReaderSettings) |
Crea una nuova istanza di XmlReader con il lettore di testo e le impostazioni specificati. |
| Create(TextReader, XmlReaderSettings, String) |
Crea una nuova istanza di XmlReader con il lettore di testo, le impostazioni e l'URI di base specificati. |
| Create(TextReader, XmlReaderSettings, XmlParserContext) |
Crea una nuova istanza di XmlReader con il lettore di testo, le impostazioni e le informazioni di contesto specificati per l'analisi. |
| Create(XmlReader, XmlReaderSettings) |
Crea una nuova istanza di XmlReader con il lettore XML e le impostazioni specificate. |
| Dispose() |
Rilascia tutte le risorse usate dall'istanza corrente della classe XmlReader. |
| Dispose(Boolean) |
Rilascia le risorse non gestite usate da XmlReader e, facoltativamente, le risorse gestite. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetAttribute(Int32) |
Quando ne viene eseguito l'override in una classe derivata, ottiene il valore dell'attributo con l'indice specificato. |
| GetAttribute(String) |
Quando sottoposto a override in una classe derivata, ottiene il valore dell'attributo con la proprietà Name specificata. |
| GetAttribute(String, String) |
Quando sottoposto a override in una classe derivata, ottiene il valore dell'attributo con le proprietà LocalName e NamespaceURI specificate. |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
| GetValueAsync() |
Ottiene in modo asincrono il valore del nodo corrente. |
| IsName(String) |
Restituisce un valore che indica se l'argomento della stringa è un nome XML valido. |
| IsNameToken(String) |
Restituisce un valore che indica se l'argomento della stringa è un token di un nome XML valido o meno. |
| IsStartElement() |
Chiama MoveToContent() e verifica se il nodo di contenuto corrente è un tag di inizio o un tag di elemento vuoto. |
| IsStartElement(String) |
Chiama MoveToContent() e verifica se il nodo corrente è un tag di inizio o un tag di elemento vuoto e se la proprietà Name dell'elemento trovato corrisponde all'argomento specificato. |
| IsStartElement(String, String) |
Chiama MoveToContent() e verifica se il nodo di contenuto è un tag di inizio o un tag di elemento vuoto e se le proprietà LocalName e NamespaceURI dell'elemento trovato corrispondono alle stringhe specificate. |
| LookupNamespace(String) |
Quando sottoposto a override in una classe derivata, risolve il prefisso di uno spazio dei nomi nell'ambito dell'elemento corrente. |
| MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
| MoveToAttribute(Int32) |
Quando ne viene eseguito l'override in una classe derivata, passa all'attributo con l'indice specificato. |
| MoveToAttribute(String) |
Quando ne viene eseguito l'override in una classe derivata, passa all'attributo con la proprietà Name specificata. |
| MoveToAttribute(String, String) |
Quando ne viene eseguito l'override in una classe derivata, passa all'attributo con le proprietà LocalName e NamespaceURI specificate. |
| MoveToContent() |
Verifica se il nodo corrente rappresenta un nodo di contenuto, ovvero un nodo testo non spazio vuoto, |
| MoveToContentAsync() |
Verifica in modo asincrono se il nodo corrente è un nodo di contenuto. Se il nodo non è un nodo di contenuto, il lettore passa al nodo di contenuto successivo oppure alla fine del file. |
| MoveToElement() |
Quando ne viene eseguito l'override in una classe derivata, passa all'elemento che contiene il nodo attributo corrente. |
| MoveToFirstAttribute() |
Quando ne viene eseguito l'override in una classe derivata, passa al primo attributo. |
| MoveToNextAttribute() |
Quando ne viene eseguito l'override in una classe derivata, passa all'attributo successivo. |
| Read() |
Quando ne viene eseguito l'override in una classe derivata, visualizza il nodo successivo nel flusso. |
| ReadAsync() |
Legge in modo asincrono il nodo successivo del flusso. |
| ReadAttributeValue() |
Quando ne viene eseguito l'override in una classe derivata, analizza il valore dell'attributo incluso in uno o più nodi |
| ReadContentAs(Type, IXmlNamespaceResolver) |
Legge il contenuto come oggetto del tipo specificato. |
| ReadContentAsAsync(Type, IXmlNamespaceResolver) |
Legge in modo asincrono il contenuto come oggetto del tipo specificato. |
| ReadContentAsBase64(Byte[], Int32, Int32) |
Legge il contenuto e restituisce byte binari decodificati Base64. |
| ReadContentAsBase64Async(Byte[], Int32, Int32) |
Legge in modo asincrono il contenuto e restituisce byte binari decodificati Base64. |
| ReadContentAsBinHex(Byte[], Int32, Int32) |
Legge il contenuto e restituisce i byte binari decodificati |
| ReadContentAsBinHexAsync(Byte[], Int32, Int32) |
Legge in modo asincrono il contenuto e restituisce byte binari decodificati |
| ReadContentAsBoolean() |
Legge il contenuto di testo nella posizione corrente come |
| ReadContentAsDateTime() |
Legge il contenuto di testo nella posizione corrente come oggetto DateTime. |
| ReadContentAsDateTimeOffset() |
Legge il contenuto di testo nella posizione corrente come oggetto DateTimeOffset. |
| ReadContentAsDecimal() |
Legge il contenuto di testo nella posizione corrente come oggetto Decimal. |
| ReadContentAsDouble() |
Legge il contenuto di testo nella posizione corrente come numero a virgola mobile e precisione doppia. |
| ReadContentAsFloat() |
Legge il contenuto di testo nella posizione corrente come numero a virgola mobile e precisione singola. |
| ReadContentAsInt() |
Legge il contenuto di testo nella posizione corrente come valore intero con segno a 32 bit. |
| ReadContentAsLong() |
Legge il contenuto di testo nella posizione corrente come valore intero con segno a 64 bit. |
| ReadContentAsObject() |
Legge il contenuto di testo nella posizione corrente come Object. |
| ReadContentAsObjectAsync() |
Legge in modo asincrono il contenuto di testo nella posizione corrente come oggetto Object. |
| ReadContentAsString() |
Legge il contenuto di testo nella posizione corrente come oggetto String. |
| ReadContentAsStringAsync() |
Legge in modo asincrono il contenuto di testo nella posizione corrente come oggetto String. |
| ReadElementContentAs(Type, IXmlNamespaceResolver) |
Legge il contenuto dell'elemento come il tipo richiesto. |
| ReadElementContentAs(Type, IXmlNamespaceResolver, String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge il contenuto dell'elemento come il tipo richiesto. |
| ReadElementContentAsAsync(Type, IXmlNamespaceResolver) |
Legge in modo asincrono il contenuto dell'elemento come il tipo richiesto. |
| ReadElementContentAsBase64(Byte[], Int32, Int32) |
Legge l'elemento e decodifica il contenuto |
| ReadElementContentAsBase64Async(Byte[], Int32, Int32) |
Legge in modo asincrono l'elemento e decodifica il contenuto |
| ReadElementContentAsBinHex(Byte[], Int32, Int32) |
Legge l'elemento e decodifica il contenuto |
| ReadElementContentAsBinHexAsync(Byte[], Int32, Int32) |
Legge in modo asincrono l'elemento e decodifica il contenuto |
| ReadElementContentAsBoolean() |
Legge l'elemento corrente e restituisce il contenuto come oggetto Boolean. |
| ReadElementContentAsBoolean(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come oggetto Boolean. |
| ReadElementContentAsDateTime() |
Legge l'elemento corrente e restituisce il contenuto come oggetto DateTime. |
| ReadElementContentAsDateTime(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come oggetto DateTime. |
| ReadElementContentAsDecimal() |
Legge l'elemento corrente e restituisce il contenuto come oggetto Decimal. |
| ReadElementContentAsDecimal(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come oggetto Decimal. |
| ReadElementContentAsDouble() |
Legge l'elemento corrente e restituisce il contenuto come numero a virgola mobile e precisione doppia. |
| ReadElementContentAsDouble(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come numero a virgola mobile e precisione doppia. |
| ReadElementContentAsFloat() |
Legge l'elemento corrente e restituisce il contenuto come numero a virgola mobile e precisione singola. |
| ReadElementContentAsFloat(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come numero a virgola mobile e precisione singola. |
| ReadElementContentAsInt() |
Legge l'elemento corrente e restituisce il contenuto come valore intero con segno a 32 bit. |
| ReadElementContentAsInt(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come valore intero con segno a 32 bit. |
| ReadElementContentAsLong() |
Legge l'elemento corrente e restituisce il contenuto come valore intero con segno a 64 bit. |
| ReadElementContentAsLong(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come valore intero con segno a 64 bit. |
| ReadElementContentAsObject() |
Legge l'elemento corrente e restituisce il contenuto come Object. |
| ReadElementContentAsObject(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come oggetto Object. |
| ReadElementContentAsObjectAsync() |
Legge in modo asincrono l'elemento corrente e restituisce il contenuto come Object. |
| ReadElementContentAsString() |
Legge l'elemento corrente e restituisce il contenuto come oggetto String. |
| ReadElementContentAsString(String, String) |
Verifica che il nome locale e l'URI dello spazio dei nomi specificati corrispondano a quelli dell'elemento corrente, quindi legge l'elemento e restituisce il contenuto come oggetto String. |
| ReadElementContentAsStringAsync() |
Legge in modo asincrono l'elemento corrente e restituisce il contenuto come oggetto String. |
| ReadElementString() |
Legge un elemento di solo testo. È tuttavia consigliabile usare il metodo ReadElementContentAsString(), perché fornisce un modo più diretto per gestire questa operazione. |
| ReadElementString(String) |
Verifica che la proprietà Name dell'elemento trovato corrisponda alla stringa specificata prima di leggere un elemento di solo testo. È tuttavia consigliabile usare il metodo ReadElementContentAsString(), perché fornisce un modo più diretto per gestire questa operazione. |
| ReadElementString(String, String) |
Verifica che le proprietà LocalName e NamespaceURI dell'elemento trovato corrispondano alle stringhe specificate prima di leggere un elemento di solo testo. È tuttavia consigliabile usare il metodo ReadElementContentAsString(String, String), perché fornisce un modo più diretto per gestire questa operazione. |
| ReadEndElement() |
Verifica che il nodo di contenuto corrente sia un tag di fine e sposta il lettore al nodo successivo. |
| ReadInnerXml() |
Quando sottoposto a override in una classe derivata, legge tutto il contenuto come stringa, incluso il markup. |
| ReadInnerXmlAsync() |
In modo asincrono legge tutti i contenuti, incluso il markup, come stringa. |
| ReadOuterXml() |
Quando ne viene eseguito l'override in una classe derivata, legge il contenuto, incluso il markup, che rappresenta questo nodo e tutti i relativi nodi figlio. |
| ReadOuterXmlAsync() |
In modo asincrono legge i contenuti che rappresentano questo nodo, incluso il markup, e i relativi elementi figlio. |
| ReadStartElement() |
Verifica che il nodo corrente sia un elemento e fa avanzare il lettore al nodo successivo. |
| ReadStartElement(String) |
Verifica che il nodo di contenuto corrente sia un elemento con la proprietà Name specificata e passa il lettore al nodo successivo. |
| ReadStartElement(String, String) |
Verifica che il nodo di contenuto corrente sia un elemento con le proprietà LocalName e NamespaceURI specificate e passa il lettore al nodo successivo. |
| ReadString() |
Quando sottoposto a override in una classe derivata, legge il contenuto di un nodo elemento o testo come se si trattasse di una stringa. È tuttavia consigliabile usare il metodo ReadElementContentAsString, perché fornisce un modo più diretto per gestire questa operazione. |
| ReadSubtree() |
Restituisce una nuova istanza di |
| ReadToDescendant(String) |
Sposta l'oggetto XmlReader al successivo elemento discendente con il nome completo specificato. |
| ReadToDescendant(String, String) |
Sposta l'oggetto XmlReader al successivo elemento discendente con il nome locale e l'URI dello spazio dei nomi specificati. |
| ReadToFollowing(String) |
Legge fino a trovare un elemento con il nome completo specificato. |
| ReadToFollowing(String, String) |
Legge fino a trovare un elemento con il nome locale e l'URI dello spazio dei nomi specificati. |
| ReadToNextSibling(String) |
Sposta l'oggetto |
| ReadToNextSibling(String, String) |
Sposta l'oggetto |
| ReadValueChunk(Char[], Int32, Int32) |
Legge flussi di testo di grandi dimensioni incorporati in un documento XML. |
| ReadValueChunkAsync(Char[], Int32, Int32) |
Legge in modo asincrono flussi di testo di grandi dimensioni incorporati in un documento XML. |
| ResolveEntity() |
Quando ne viene eseguito l'override in una classe derivata, risolve il riferimento a entità per i nodi |
| Skip() |
Ignora gli elementi figlio del nodo corrente. |
| SkipAsync() |
Ignora in modo asincrono gli elementi figlio del nodo corrente. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
| IDisposable.Dispose() |
Per una descrizione di questo membro, vedere Dispose(). |