XmlReader Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje čtenáře, který poskytuje rychlý přístup k datům XML, bez mezipaměti.
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
- Dědičnost
-
XmlReader
- Odvozené
- Implementuje
Příklady
Následující příklad kódu ukazuje, jak použít asynchronní rozhraní API k parsování 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
Poznámky
Další informace o tomto rozhraní API naleznete v tématu Doplňkové poznámky k rozhraní API pro XmlReader.
Konstruktory
| Name | Description |
|---|---|
| XmlReader() |
Inicializuje novou instanci |
Vlastnosti
| Name | Description |
|---|---|
| AttributeCount |
Při přepsání v odvozené třídě získá počet atributů v aktuálním uzlu. |
| BaseURI |
Při přepsání v odvozené třídě získá základní identifikátor URI aktuálního uzlu. |
| CanReadBinaryContent |
Získá hodnotu určující, zda XmlReader implementuje binární obsah read metody. |
| CanReadValueChunk |
Získá hodnotu určující, zda XmlReader implementuje metodu ReadValueChunk(Char[], Int32, Int32) . |
| CanResolveEntity |
Získá hodnotu označující, zda může tato čtečka analyzovat a překládat entity. |
| Depth |
Při přepsání v odvozené třídě získá hloubku aktuálního uzlu v dokumentu XML. |
| EOF |
Při přepsání v odvozené třídě získá hodnotu označující, zda je čtenář umístěn na konci datového proudu. |
| HasAttributes |
Získá hodnotu určující, zda aktuální uzel má nějaké atributy. |
| HasValue |
Při přepsání v odvozené třídě získá hodnotu určující, zda aktuální uzel může mít Value. |
| IsDefault |
Při přepsání v odvozené třídě získá hodnotu určující, zda aktuální uzel je atribut, který byl generován z výchozí hodnoty definované v DTD nebo schématu. |
| IsEmptyElement |
Při přepsání v odvozené třídě získá hodnotu označující, zda je aktuální uzel prázdný prvek (například |
| Item[Int32] |
Při přepsání v odvozené třídě získá hodnotu atributu se zadaným indexem. |
| Item[String, String] |
Při přepsání v odvozené třídě získá hodnotu atributu se zadaným LocalName a NamespaceURI. |
| Item[String] |
Při přepsání v odvozené třídě získá hodnotu atributu se zadaným Name. |
| LocalName |
Při přepsání v odvozené třídě získá místní název aktuálního uzlu. |
| Name |
Při přepsání v odvozené třídě získá kvalifikovaný název aktuálního uzlu. |
| NamespaceURI |
Při přepsání v odvozené třídě získá identifikátor URI oboru názvů (definovaný ve specifikaci oboru názvů W3C) uzlu, na kterém je čtenář umístěn. |
| NameTable |
Při přepsání v odvozené třídě získá XmlNameTable přidružené k této implementaci. |
| NodeType |
Při přepsání v odvozené třídě získá typ aktuálního uzlu. |
| Prefix |
Při přepsání v odvozené třídě získá předponu oboru názvů přidruženou k aktuálnímu uzlu. |
| QuoteChar |
Při přepsání v odvozené třídě získá znak uvozovky použitý k uzavření hodnoty uzlu atributu. |
| ReadState |
Při přepsání v odvozené třídě získá stav čtenáře. |
| SchemaInfo |
Získá informace o schématu, které byly přiřazeny k aktuálnímu uzlu v důsledku ověření schématu. |
| Settings |
XmlReaderSettings Získá objekt použitý k vytvoření této XmlReader instance. |
| Value |
Při přepsání v odvozené třídě získá textovou hodnotu aktuálního uzlu. |
| ValueType |
Získá typ CLR (Common Language Runtime) pro aktuální uzel. |
| XmlLang |
Při přepsání v odvozené třídě získá aktuální |
| XmlSpace |
Při přepsání v odvozené třídě získá aktuální |
Metody
| Name | Description |
|---|---|
| Close() | |
| Create(Stream, XmlReaderSettings, String) |
Vytvoří novou XmlReader instanci pomocí zadaného datového proudu, základního identifikátoru URI a nastavení. |
| Create(Stream, XmlReaderSettings, XmlParserContext) |
Vytvoří novou XmlReader instanci pomocí zadaného datového proudu, nastavení a kontextových informací pro analýzu. |
| Create(Stream, XmlReaderSettings) |
Vytvoří novou XmlReader instanci se zadaným datovým proudem a nastavením. |
| Create(Stream) |
Vytvoří novou XmlReader instanci pomocí zadaného datového proudu s výchozím nastavením. |
| Create(String, XmlReaderSettings, XmlParserContext) |
Vytvoří novou XmlReader instanci pomocí zadaného identifikátoru URI, nastavení a kontextových informací pro analýzu. |
| Create(String, XmlReaderSettings) |
Vytvoří novou XmlReader instanci pomocí zadaného identifikátoru URI a nastavení. |
| Create(String) |
Vytvoří novou XmlReader instanci se zadaným identifikátorem URI. |
| Create(TextReader, XmlReaderSettings, String) |
Vytvoří novou XmlReader instanci pomocí zadané čtečky textu, nastavení a základního identifikátoru URI. |
| Create(TextReader, XmlReaderSettings, XmlParserContext) |
Vytvoří novou XmlReader instanci pomocí zadané čtečky textu, nastavení a kontextových informací pro analýzu. |
| Create(TextReader, XmlReaderSettings) |
Vytvoří novou XmlReader instanci pomocí zadané čtečky textu a nastavení. |
| Create(TextReader) |
Vytvoří novou XmlReader instanci pomocí zadané čtečky textu. |
| Create(XmlReader, XmlReaderSettings) |
Vytvoří novou XmlReader instanci pomocí zadané čtečky XML a nastavení. |
| Dispose() |
Uvolní všechny prostředky používané aktuální instancí XmlReader třídy. |
| Dispose(Boolean) |
Uvolní nespravované prostředky používané XmlReader a volitelně uvolní spravované prostředky. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetAttribute(Int32) |
Při přepsání v odvozené třídě získá hodnotu atributu se zadaným indexem. |
| GetAttribute(String, String) |
Při přepsání v odvozené třídě získá hodnotu atributu se zadaným LocalName a NamespaceURI. |
| GetAttribute(String) |
Při přepsání v odvozené třídě získá hodnotu atributu se zadaným Name. |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| GetValueAsync() |
Asynchronně získá hodnotu aktuálního uzlu. |
| IsName(String) |
Vrátí hodnotu určující, zda je argument řetězce platným názvem XML. |
| IsNameToken(String) |
Vrátí hodnotu určující, zda je argument řetězce platným tokenem názvu XML. |
| IsStartElement() |
Volá MoveToContent() a testuje, jestli je aktuální uzel obsahu počáteční značkou nebo prázdnou značkou elementu. |
| IsStartElement(String, String) |
Volá MoveToContent() a testuje, zda je aktuální uzel obsahu počáteční značkou nebo prázdnou značkou elementu a pokud nalezené LocalName vlastnosti NamespaceURI odpovídají zadaným řetězcům. |
| IsStartElement(String) |
Volá MoveToContent() a testuje, zda je aktuální uzel obsahu počáteční značkou nebo prázdnou značkou elementu a pokud Name vlastnost nalezeného prvku odpovídá danému argumentu. |
| LookupNamespace(String) |
Při přepsání v odvozené třídě přeloží předponu oboru názvů v oboru aktuálního elementu. |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| MoveToAttribute(Int32) |
Při přepsání v odvozené třídě se přesune na atribut se zadaným indexem. |
| MoveToAttribute(String, String) |
Při přepsání v odvozené třídě se přesune na atribut se zadaným LocalName a NamespaceURI. |
| MoveToAttribute(String) |
Při přepsání v odvozené třídě se přesune na atribut se zadaným Name. |
| MoveToContent() |
Zkontroluje, jestli je aktuální uzel obsahem (bez prázdného textu, |
| MoveToContentAsync() |
Asynchronně zkontroluje, jestli je aktuální uzel uzlem obsahu. Pokud uzel není uzel obsahu, čtenář přeskočí dopředu na další uzel obsahu nebo konec souboru. |
| MoveToElement() |
Při přepsání v odvozené třídě se přesune na prvek, který obsahuje aktuální uzel atributu. |
| MoveToFirstAttribute() |
Při přepsání v odvozené třídě se přesune na první atribut. |
| MoveToNextAttribute() |
Při přepsání v odvozené třídě se přesune na další atribut. |
| Read() |
Při přepsání v odvozené třídě přečte další uzel z datového proudu. |
| ReadAsync() |
Asynchronně čte další uzel z datového proudu. |
| ReadAttributeValue() |
Při přepsání v odvozené třídě parsuje hodnotu atributu do jednoho nebo více |
| ReadContentAs(Type, IXmlNamespaceResolver) |
Přečte obsah jako objekt zadaného typu. |
| ReadContentAsAsync(Type, IXmlNamespaceResolver) |
Asynchronně čte obsah jako objekt zadaného typu. |
| ReadContentAsBase64(Byte[], Int32, Int32) |
Přečte obsah a vrátí dekódované binární bajty Base64. |
| ReadContentAsBase64Async(Byte[], Int32, Int32) |
Asynchronně přečte obsah a vrátí dekódované binární bajty Base64. |
| ReadContentAsBinHex(Byte[], Int32, Int32) |
Přečte obsah a vrátí |
| ReadContentAsBinHexAsync(Byte[], Int32, Int32) |
Asynchronně přečte obsah a vrátí |
| ReadContentAsBoolean() |
Přečte textový obsah na aktuální pozici jako |
| ReadContentAsDateTime() |
Přečte textový obsah na aktuální pozici jako DateTime objekt. |
| ReadContentAsDateTimeOffset() |
Přečte textový obsah na aktuální pozici jako DateTimeOffset objekt. |
| ReadContentAsDecimal() |
Přečte textový obsah na aktuální pozici jako Decimal objekt. |
| ReadContentAsDouble() |
Přečte textový obsah na aktuální pozici jako číslo s plovoucí desetinnou čárkou s dvojitou přesností. |
| ReadContentAsFloat() |
Přečte textový obsah na aktuální pozici jako číslo s plovoucí desetinnou čárkou s jednou přesností. |
| ReadContentAsInt() |
Přečte textový obsah na aktuální pozici jako 32bitové celé číslo se signedm. |
| ReadContentAsLong() |
Přečte textový obsah na aktuální pozici jako 64bitové celé číslo se signedm. |
| ReadContentAsObject() |
Přečte textový obsah na aktuální pozici jako .Object |
| ReadContentAsObjectAsync() |
Asynchronně čte textový obsah na aktuální pozici jako .Object |
| ReadContentAsString() |
Přečte textový obsah na aktuální pozici jako String objekt. |
| ReadContentAsStringAsync() |
Asynchronně přečte textový obsah na aktuální pozici jako String objekt. |
| ReadElementContentAs(Type, IXmlNamespaceResolver, String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku a pak přečte obsah elementu jako požadovaný typ. |
| ReadElementContentAs(Type, IXmlNamespaceResolver) |
Přečte obsah elementu jako požadovaný typ. |
| ReadElementContentAsAsync(Type, IXmlNamespaceResolver) |
Asynchronně čte obsah elementu jako požadovaný typ. |
| ReadElementContentAsBase64(Byte[], Int32, Int32) |
Přečte prvek a dekóduje |
| ReadElementContentAsBase64Async(Byte[], Int32, Int32) |
Asynchronně přečte prvek a dekóduje |
| ReadElementContentAsBinHex(Byte[], Int32, Int32) |
Přečte prvek a dekóduje |
| ReadElementContentAsBinHexAsync(Byte[], Int32, Int32) |
Asynchronně přečte prvek a dekóduje |
| ReadElementContentAsBoolean() |
Přečte aktuální prvek a vrátí obsah jako Boolean objekt. |
| ReadElementContentAsBoolean(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako Boolean objekt. |
| ReadElementContentAsDateTime() |
Přečte aktuální prvek a vrátí obsah jako DateTime objekt. |
| ReadElementContentAsDateTime(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako DateTime objekt. |
| ReadElementContentAsDecimal() |
Přečte aktuální prvek a vrátí obsah jako Decimal objekt. |
| ReadElementContentAsDecimal(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako Decimal objekt. |
| ReadElementContentAsDouble() |
Přečte aktuální prvek a vrátí obsah jako číslo s plovoucí desetinnou čárkou s dvojitou přesností. |
| ReadElementContentAsDouble(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako číslo s plovoucí desetinnou čárkou s dvojitou přesností. |
| ReadElementContentAsFloat() |
Přečte aktuální prvek a vrátí obsah jako číslo s plovoucí desetinnou čárkou s jednoduchou přesností. |
| ReadElementContentAsFloat(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako číslo s plovoucí desetinnou čárkou s jednoduchou přesností. |
| ReadElementContentAsInt() |
Přečte aktuální prvek a vrátí obsah jako 32bitové signed celé číslo. |
| ReadElementContentAsInt(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako 32bitové signed integer. |
| ReadElementContentAsLong() |
Přečte aktuální prvek a vrátí obsah jako 64bitové signed integer. |
| ReadElementContentAsLong(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako 64bitové celé číslo se signed. |
| ReadElementContentAsObject() |
Přečte aktuální prvek a vrátí obsah jako .Object |
| ReadElementContentAsObject(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako Object. |
| ReadElementContentAsObjectAsync() |
Asynchronně přečte aktuální prvek a vrátí obsah jako .Object |
| ReadElementContentAsString() |
Přečte aktuální prvek a vrátí obsah jako String objekt. |
| ReadElementContentAsString(String, String) |
Zkontroluje, zda zadaný místní název a identifikátor URI oboru názvů odpovídá aktuálnímu prvku, pak přečte aktuální prvek a vrátí obsah jako String objekt. |
| ReadElementContentAsStringAsync() |
Asynchronně přečte aktuální prvek a vrátí obsah jako String objekt. |
| ReadElementString() |
Přečte textový prvek. Místo toho však doporučujeme použít metodu ReadElementContentAsString() , protože poskytuje jednodušší způsob, jak tuto operaci zpracovat. |
| ReadElementString(String, String) |
Zkontroluje, zda LocalName nalezené prvky a NamespaceURI vlastnosti odpovídají zadaným řetězcům před čtením textového prvku. Místo toho však doporučujeme použít metodu ReadElementContentAsString(String, String) , protože poskytuje jednodušší způsob, jak tuto operaci zpracovat. |
| ReadElementString(String) |
Zkontroluje, že Name vlastnost nalezeného prvku odpovídá danému řetězci před čtením textového prvku. Místo toho však doporučujeme použít metodu ReadElementContentAsString() , protože poskytuje jednodušší způsob, jak tuto operaci zpracovat. |
| ReadEndElement() |
Zkontroluje, jestli je aktuální uzel obsahu koncovou značkou a přejde čtenáře na další uzel. |
| ReadInnerXml() |
Při přepsání v odvozené třídě přečte veškerý obsah, včetně revizí, jako řetězec. |
| ReadInnerXmlAsync() |
Asynchronně přečte veškerý obsah, včetně revizí, jako řetězec. |
| ReadOuterXml() |
Při přepsání v odvozené třídě přečte obsah včetně revizí představující tento uzel a všechny jeho podřízené položky. |
| ReadOuterXmlAsync() |
Asynchronně přečte obsah, včetně revizí, představující tento uzel a všechny jeho podřízené položky. |
| ReadStartElement() |
Zkontroluje, jestli je aktuální uzel prvkem a přejde čtenáře na další uzel. |
| ReadStartElement(String, String) |
Zkontroluje, že aktuální uzel obsahu je prvek se zadaným LocalName uzlem a NamespaceURI přejde čtenáře na další uzel. |
| ReadStartElement(String) |
Zkontroluje, že aktuální uzel obsahu je prvek s daným Name prvkem a přejde čtenáře na další uzel. |
| ReadString() |
Při přepsání v odvozené třídě přečte obsah elementu nebo textového uzlu jako řetězec. Místo toho však doporučujeme použít metodu ReadElementContentAsString , protože poskytuje jednodušší způsob, jak tuto operaci zpracovat. |
| ReadSubtree() |
Vrátí novou |
| ReadToDescendant(String, String) |
Přejde na XmlReader další potomk element se zadaným místním názvem a identifikátorem URI oboru názvů. |
| ReadToDescendant(String) |
Přejde na XmlReader další následný prvek se zadaným kvalifikovaným názvem. |
| ReadToFollowing(String, String) |
Přečte, dokud se nenajde prvek se zadaným místním názvem a identifikátorem URI oboru názvů. |
| ReadToFollowing(String) |
Přečte, dokud se nenajde prvek se zadaným kvalifikovaným názvem. |
| ReadToNextSibling(String, String) |
Přejde |
| ReadToNextSibling(String) |
Přejde |
| ReadValueChunk(Char[], Int32, Int32) |
Čte velké datové proudy textu vložené do dokumentu XML. |
| ReadValueChunkAsync(Char[], Int32, Int32) |
Asynchronně čte velké datové proudy textu vložené do dokumentu XML. |
| ResolveEntity() |
Při přepsání v odvozené třídě přeloží odkaz na entitu pro |
| Skip() |
Přeskočí podřízené položky aktuálního uzlu. |
| SkipAsync() |
Asynchronně přeskočí podřízené položky aktuálního uzlu. |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| IDisposable.Dispose() |
Popis tohoto člena naleznete v tématu Dispose(). |