XmlTextReader Konstruktory
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í.
Inicializuje novou instanci objektu XmlTextReader.
Přetížení
XmlTextReader() |
Inicializuje novou instanci objektu |
XmlTextReader(String, XmlNodeType, XmlParserContext) |
Inicializuje novou instanci XmlTextReader třídy pomocí zadaného řetězce , XmlNodeTypea XmlParserContext. |
XmlTextReader(String, TextReader, XmlNameTable) |
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL TextReader a XmlNameTable. |
XmlTextReader(String, Stream, XmlNameTable) |
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL, datovým proudem a XmlNameTable. |
XmlTextReader(Stream, XmlNodeType, XmlParserContext) |
Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem , XmlNodeTypea XmlParserContext. |
XmlTextReader(String, TextReader) |
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a TextReader. |
XmlTextReader(String, Stream) |
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a datovým proudem. |
XmlTextReader(String, XmlNameTable) |
Inicializuje novou instanci XmlTextReader třídy se zadaným souborem a XmlNameTable. |
XmlTextReader(Stream, XmlNameTable) |
Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem a XmlNameTable. |
XmlTextReader(XmlNameTable) |
Inicializuje novou instanci XmlTextReader třídy se zadaným XmlNameTableobjektem . |
XmlTextReader(String) |
Inicializuje novou instanci XmlTextReader třídy pomocí zadaného souboru. |
XmlTextReader(TextReader) |
Inicializuje novou instanci XmlTextReader třídy se zadaným TextReaderobjektem . |
XmlTextReader(Stream) |
Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem. |
XmlTextReader(TextReader, XmlNameTable) |
Inicializuje novou instanci XmlTextReader třídy se zadanými TextReader a XmlNameTable. |
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
XmlTextReader()
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci objektu XmlTextReader
.
protected:
XmlTextReader();
protected XmlTextReader ();
Protected Sub New ()
Viz také
Platí pro
XmlTextReader(String, XmlNodeType, XmlParserContext)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy pomocí zadaného řetězce , XmlNodeTypea XmlParserContext.
public:
XmlTextReader(System::String ^ xmlFragment, System::Xml::XmlNodeType fragType, System::Xml::XmlParserContext ^ context);
public XmlTextReader (string xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext? context);
public XmlTextReader (string xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext context);
new System.Xml.XmlTextReader : string * System.Xml.XmlNodeType * System.Xml.XmlParserContext -> System.Xml.XmlTextReader
Public Sub New (xmlFragment As String, fragType As XmlNodeType, context As XmlParserContext)
Parametry
- xmlFragment
- String
Řetězec obsahující fragment XML, který se má analyzovat.
- fragType
- XmlNodeType
Fragment XmlNodeType XML. To také určuje, co může řetězec fragmentu obsahovat. (Viz následující tabulka.)
- context
- XmlParserContext
Hodnota XmlParserContext , ve které xmlFragment
se má analyzovat. To zahrnuje XmlNameTable použití, kódování, obor názvů, aktuální xml:lang
a xml:space
obor.
Výjimky
fragType
není , Element
Attribute
nebo Document
XmlNodeType
.
xmlFragment
je null
.
Příklady
Následující příklad parsuje fragment XML. Používá a XmlNamespaceManager k zpracování překladu XmlParserContext
oboru názvů.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
// Create the XML fragment to be parsed.
String^ xmlFrag = "<book> <title>Pride And Prejudice</title> <bk:genre>novel</bk:genre> </book>";
// Create the XmlNamespaceManager.
NameTable^ nt = gcnew NameTable;
XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager( nt );
nsmgr->AddNamespace( "bk", "urn:sample" );
// Create the XmlParserContext.
XmlParserContext^ context = gcnew XmlParserContext( nullptr,nsmgr,nullptr,XmlSpace::None );
// Create the reader.
XmlTextReader^ reader = gcnew XmlTextReader( xmlFrag,XmlNodeType::Element,context );
// Parse the XML. If they exist, display the prefix and
// namespace URI of each element.
while ( reader->Read() )
{
if ( reader->IsStartElement() )
{
if ( reader->Prefix == String::Empty )
Console::WriteLine( "< {0}>", reader->LocalName );
else
{
Console::Write( "< {0}: {1}>", reader->Prefix, reader->LocalName );
Console::WriteLine( " The namespace URI is {0}", reader->NamespaceURI );
}
}
}
// Close the reader.
reader->Close();
}
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
//Create the XML fragment to be parsed.
string xmlFrag ="<book> " +
"<title>Pride And Prejudice</title>" +
"<bk:genre>novel</bk:genre>" +
"</book>";
//Create the XmlNamespaceManager.
NameTable nt = new NameTable();
XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
nsmgr.AddNamespace("bk", "urn:sample");
//Create the XmlParserContext.
XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);
//Create the reader.
XmlTextReader reader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context);
//Parse the XML. If they exist, display the prefix and
//namespace URI of each element.
while (reader.Read()){
if (reader.IsStartElement()){
if (reader.Prefix==String.Empty)
{
Console.WriteLine("<{0}>", reader.LocalName);
}
else
{
Console.Write("<{0}:{1}>", reader.Prefix, reader.LocalName);
Console.WriteLine(" The namespace URI is " + reader.NamespaceURI);
}
}
}
//Close the reader.
reader.Close();
}
} // End class
Imports System.IO
Imports System.Xml
public class Sample
public shared sub Main()
'Create the XML fragment to be parsed.
Dim xmlFrag as string ="<book> " & _
"<title>Pride And Prejudice</title>" & _
"<bk:genre>novel</bk:genre>" & _
"</book>"
'Create the XmlNamespaceManager.
Dim nt as NameTable = new NameTable()
Dim nsmgr as XmlNamespaceManager = new XmlNamespaceManager(nt)
nsmgr.AddNamespace("bk", "urn:sample")
'Create the XmlParserContext.
Dim context as XmlParserContext = new XmlParserContext(nothing, nsmgr, nothing, XmlSpace.None)
'Create the reader.
Dim reader as XmlTextReader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context)
'Parse the XML. If they exist, display the prefix and
'namespace URI of each element.
while (reader.Read())
if (reader.IsStartElement())
if (reader.Prefix=String.Empty)
Console.WriteLine("<{0}>", reader.LocalName)
else
Console.Write("<{0}:{1}>", reader.Prefix, reader.LocalName)
Console.WriteLine(" The namespace URI is " + reader.NamespaceURI)
end if
end if
end while
'Close the reader.
reader.Close()
end sub
end class
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Tento konstruktor parsuje daný řetězec jako fragment XML. Pokud je fragment XML elementem nebo atributem, můžete obejít pravidla kořenové úrovně pro dokumenty XML ve správném formátu. Tento konstruktor může zpracovávat řetězce vrácené z ReadInnerXml.
Následující tabulka uvádí platné hodnoty pro fragType
a způsob, jakým čtenář parsuje každý z různých typů uzlů.
Xmlnodetype | Fragment může obsahovat |
---|---|
Prvek | Jakýkoli platný obsah elementu (například libovolná kombinace prvků, komentářů, pokynů pro zpracování, oddílů CDATA, textu a odkazů na entity) Lze také zadat deklaraci XML. To vám umožní určit kódování pro fragment XML, místo abyste ho museli nastavovat na objektu XmlParserContext . |
Atribut | Hodnota atributu (část uvnitř uvozovek). |
Dokument | Obsah celého dokumentu XML. Tím se vynucují pravidla na úrovni dokumentu. |
Viz také
Platí pro
XmlTextReader(String, TextReader, XmlNameTable)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL TextReader a XmlNameTable.
public:
XmlTextReader(System::String ^ url, System::IO::TextReader ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (string url, System.IO.TextReader input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : string * System.IO.TextReader * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (url As String, input As TextReader, nt As XmlNameTable)
Parametry
- url
- String
Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu. Pokud url
je null
, BaseURI
je nastavená na String.Empty
hodnotu .
- input
- TextReader
Obsahující TextReader
data XML, která se mají číst.
- nt
- XmlNameTable
Příkaz XmlNameTable
, který se má použít.
Výjimky
Hodnota nt
je null
.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Předpokládá se, že TextReader
je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.
Viz také
Platí pro
XmlTextReader(String, Stream, XmlNameTable)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL, datovým proudem a XmlNameTable.
public:
XmlTextReader(System::String ^ url, System::IO::Stream ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (string url, System.IO.Stream input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : string * System.IO.Stream * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (url As String, input As Stream, nt As XmlNameTable)
Parametry
- url
- String
Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu. Pokud url
je null
, BaseURI
je nastavená na String.Empty
hodnotu .
- input
- Stream
Datový proud obsahující data XML, která se mají číst.
- nt
- XmlNameTable
Příkaz XmlNameTable
, který se má použít.
Výjimky
Hodnota input
nebo nt
je null
.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Viz také
Platí pro
XmlTextReader(Stream, XmlNodeType, XmlParserContext)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem , XmlNodeTypea XmlParserContext.
public:
XmlTextReader(System::IO::Stream ^ xmlFragment, System::Xml::XmlNodeType fragType, System::Xml::XmlParserContext ^ context);
public XmlTextReader (System.IO.Stream xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext? context);
public XmlTextReader (System.IO.Stream xmlFragment, System.Xml.XmlNodeType fragType, System.Xml.XmlParserContext context);
new System.Xml.XmlTextReader : System.IO.Stream * System.Xml.XmlNodeType * System.Xml.XmlParserContext -> System.Xml.XmlTextReader
Public Sub New (xmlFragment As Stream, fragType As XmlNodeType, context As XmlParserContext)
Parametry
- xmlFragment
- Stream
Datový proud obsahující fragment XML, který se má analyzovat.
- fragType
- XmlNodeType
Fragment XmlNodeType XML. To také určuje, co fragment může obsahovat. (Viz následující tabulka.)
- context
- XmlParserContext
Hodnota XmlParserContext , ve které xmlFragment
se má analyzovat. To zahrnuje XmlNameTable použití, kódování, obor názvů, aktuální xml:lang
a xml:space
obor.
Výjimky
fragType
není element, atribut nebo dokument XmlNodeType
.
xmlFragment
je null
.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Tento konstruktor parsuje daný řetězec jako fragment XML. Pokud je fragment XML elementem nebo atributem, můžete obejít pravidla kořenové úrovně pro dokumenty XML ve správném formátu.
Následující tabulka uvádí platné hodnoty pro fragType
.
Xmlnodetype | Fragment může obsahovat |
---|---|
Element |
Jakýkoli platný obsah elementu (například libovolná kombinace prvků, komentářů, pokynů pro zpracování, oddílů CDATA, textu a odkazů na entity) Lze také zadat deklaraci XML. To vám umožní určit kódování pro fragment XML, místo abyste ho museli nastavovat na objektu XmlParserContext . |
Attribute |
Hodnota atributu (část uvnitř uvozovek). |
Document |
Obsah celého dokumentu XML. Tím se vynucují pravidla na úrovni dokumentu. |
Čtenář použije k určení kódování datového proudu následující kód.
Zkontroluje XmlParserContext.Encoding vlastnost a určí kódování.
Encoding
Pokud jenull
vlastnost , čtenář vyhledá značku pořadí bajtů na začátku datového proudu.Encoding
Pokud jenull
vlastnost a není nalezena žádná značka pořadí bajtů, čtenář předpokládá, že datový proud je kódován v UTF-8.
Viz také
Platí pro
XmlTextReader(String, TextReader)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a TextReader.
public:
XmlTextReader(System::String ^ url, System::IO::TextReader ^ input);
public XmlTextReader (string url, System.IO.TextReader input);
new System.Xml.XmlTextReader : string * System.IO.TextReader -> System.Xml.XmlTextReader
Public Sub New (url As String, input As TextReader)
Parametry
- url
- String
Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu.
- input
- TextReader
Obsahující TextReader
data XML, která se mají číst.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Předpokládá se, že TextReader
je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.
Viz také
Platí pro
XmlTextReader(String, Stream)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadanou adresou URL a datovým proudem.
public:
XmlTextReader(System::String ^ url, System::IO::Stream ^ input);
public XmlTextReader (string url, System.IO.Stream input);
new System.Xml.XmlTextReader : string * System.IO.Stream -> System.Xml.XmlTextReader
Public Sub New (url As String, input As Stream)
Parametry
- url
- String
Adresa URL, která se má použít k překladu externích prostředků. Hodnota BaseURI je nastavená na tuto hodnotu.
- input
- Stream
Datový proud obsahující data XML, která se mají číst.
Výjimky
input
je null
.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Viz také
Platí pro
XmlTextReader(String, XmlNameTable)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadaným souborem a XmlNameTable.
public:
XmlTextReader(System::String ^ url, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (string url, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : string * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (url As String, nt As XmlNameTable)
Parametry
- url
- String
Adresa URL souboru obsahujícího data XML, která se mají číst.
- nt
- XmlNameTable
Příkaz XmlNameTable
, který se má použít.
Výjimky
Hodnota nt
je null
.
Zadaný soubor nebyl nalezen.
Část názvu souboru nebo adresáře nebyla nalezena.
url
je prázdný řetězec.
url
není platný identifikátor URI.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Viz také
Platí pro
XmlTextReader(Stream, XmlNameTable)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem a XmlNameTable.
public:
XmlTextReader(System::IO::Stream ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (System.IO.Stream input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : System.IO.Stream * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (input As Stream, nt As XmlNameTable)
Parametry
- input
- Stream
Datový proud obsahující data XML, která se mají číst.
- nt
- XmlNameTable
Příkaz XmlNameTable
, který se má použít.
Výjimky
Hodnota input
nebo nt
je null
.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Dekóduje XmlTextReader datový proud pomocí System.Text.Encoding.
Pokud zadáte tabulku názvů, použije tento konstruktor názvy definované již v této tabulce.
Viz také
Platí pro
XmlTextReader(XmlNameTable)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadaným XmlNameTableobjektem .
protected:
XmlTextReader(System::Xml::XmlNameTable ^ nt);
protected XmlTextReader (System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Protected Sub New (nt As XmlNameTable)
Parametry
- nt
- XmlNameTable
Příkaz XmlNameTable
, který se má použít.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Viz také
Platí pro
XmlTextReader(String)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy pomocí zadaného souboru.
public:
XmlTextReader(System::String ^ url);
public XmlTextReader (string url);
new System.Xml.XmlTextReader : string -> System.Xml.XmlTextReader
Public Sub New (url As String)
Parametry
Výjimky
Zadaný soubor nebyl nalezen.
Část názvu souboru nebo adresáře nebyla nalezena.
url
je prázdný řetězec.
url
není platný identifikátor URI.
Příklady
Následující příklad přečte soubor XML a zobrazí jednotlivé uzly.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlTextReader^ reader = nullptr;
String^ filename = "items.xml";
try
{
// Load the reader with the data file and ignore all white space nodes.
reader = gcnew XmlTextReader( filename );
reader->WhitespaceHandling = WhitespaceHandling::None;
// Parse the file and display each of the nodes.
while ( reader->Read() )
{
switch ( reader->NodeType )
{
case XmlNodeType::Element:
Console::Write( "<{0}>", reader->Name );
break;
case XmlNodeType::Text:
Console::Write( reader->Value );
break;
case XmlNodeType::CDATA:
Console::Write( "<![CDATA[{0}]]>", reader->Value );
break;
case XmlNodeType::ProcessingInstruction:
Console::Write( "<?{0} {1}?>", reader->Name, reader->Value );
break;
case XmlNodeType::Comment:
Console::Write( "<!--{0}-->", reader->Value );
break;
case XmlNodeType::XmlDeclaration:
Console::Write( "<?xml version='1.0'?>" );
break;
case XmlNodeType::Document:
break;
case XmlNodeType::DocumentType:
Console::Write( "<!DOCTYPE {0} [{1}]", reader->Name, reader->Value );
break;
case XmlNodeType::EntityReference:
Console::Write( reader->Name );
break;
case XmlNodeType::EndElement:
Console::Write( "</{0}>", reader->Name );
break;
}
}
}
finally
{
if ( reader != nullptr )
reader->Close();
}
}
using System;
using System.IO;
using System.Xml;
public class Sample {
private const String filename = "items.xml";
public static void Main() {
XmlTextReader reader = null;
try {
// Load the reader with the data file and ignore all white space nodes.
reader = new XmlTextReader(filename);
reader.WhitespaceHandling = WhitespaceHandling.None;
// Parse the file and display each of the nodes.
while (reader.Read()) {
switch (reader.NodeType) {
case XmlNodeType.Element:
Console.Write("<{0}>", reader.Name);
break;
case XmlNodeType.Text:
Console.Write(reader.Value);
break;
case XmlNodeType.CDATA:
Console.Write("<![CDATA[{0}]]>", reader.Value);
break;
case XmlNodeType.ProcessingInstruction:
Console.Write("<?{0} {1}?>", reader.Name, reader.Value);
break;
case XmlNodeType.Comment:
Console.Write("<!--{0}-->", reader.Value);
break;
case XmlNodeType.XmlDeclaration:
Console.Write("<?xml version='1.0'?>");
break;
case XmlNodeType.Document:
break;
case XmlNodeType.DocumentType:
Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value);
break;
case XmlNodeType.EntityReference:
Console.Write(reader.Name);
break;
case XmlNodeType.EndElement:
Console.Write("</{0}>", reader.Name);
break;
}
}
}
finally {
if (reader!=null)
reader.Close();
}
}
} // End class
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
'Reads an XML document
Public Class Sample
Private Const filename As String = "items.xml"
Public Shared Sub Main()
Dim reader As XmlTextReader = Nothing
Try
' Load the reader with the data file and ignore all white space nodes.
reader = New XmlTextReader(filename)
reader.WhitespaceHandling = WhitespaceHandling.None
' Parse the file and display each of the nodes.
While reader.Read()
Select Case reader.NodeType
Case XmlNodeType.Element
Console.Write("<{0}>", reader.Name)
Case XmlNodeType.Text
Console.Write(reader.Value)
Case XmlNodeType.CDATA
Console.Write("<![CDATA[{0}]]>", reader.Value)
Case XmlNodeType.ProcessingInstruction
Console.Write("<?{0} {1}?>", reader.Name, reader.Value)
Case XmlNodeType.Comment
Console.Write("<!--{0}-->", reader.Value)
Case XmlNodeType.XmlDeclaration
Console.Write("<?xml version='1.0'?>")
Case XmlNodeType.Document
Case XmlNodeType.DocumentType
Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value)
Case XmlNodeType.EntityReference
Console.Write(reader.Name)
Case XmlNodeType.EndElement
Console.Write("</{0}>", reader.Name)
End Select
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
V příkladu se jako vstup používá soubor items.xml
, .
<?xml version="1.0"?>
<!-- This is a sample XML document -->
<!DOCTYPE Items [<!ENTITY number "123">]>
<Items>
<Item>Test with an entity: &number;</Item>
<Item>test with a child element <more/> stuff</Item>
<Item>test with a CDATA section <![CDATA[<456>]]> def</Item>
<Item>Test with an char entity: A</Item>
<!-- Fourteen chars in this element.-->
<Item>1234567890ABCD</Item>
</Items>
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Pokud se soubor nachází na prostředku, který vyžaduje přístupové přihlašovací údaje, zadejte potřebné přihlašovací údaje pomocí XmlResolver vlastnosti .
Poznámka
Ve verzi 1.1 rozhraní .NET Framework částečně důvěryhodný kód nemůže nastavit XmlResolver
vlastnost. Alternativním řešením je vytvořit XmlUrlResolver objekt s potřebnými přihlašovacími údaji, předat identifikátor URI metodě XmlUrlResolver.GetEntity a pak vytvořit XmlTextReader
objekt pomocí výsledného Stream objektu. Alternativní řešení je popsáno v následujícím kódu jazyka C#.
// Create a resolver with the necessary credentials.
XmlUrlResolver resolver = new XmlUrlResolver();
NetworkCredential nc = new NetworkCredential(SecurelyStoredUserName, SecurelyStoredPassword, SecurelyStoredDomain);
resolver.Credentials = nc;
// Get a Stream object containing the XML file.
Uri myUri = new Uri ("http://myServer/data/books.xml");
Stream s=(Stream)resolver.GetEntity(myUri, null, typeof(Stream));
// Construct a reader using the Stream object.
XmlTextReader reader = new XmlTextReader(s);
Viz také
Platí pro
XmlTextReader(TextReader)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadaným TextReaderobjektem .
public:
XmlTextReader(System::IO::TextReader ^ input);
public XmlTextReader (System.IO.TextReader input);
new System.Xml.XmlTextReader : System.IO.TextReader -> System.Xml.XmlTextReader
Public Sub New (input As TextReader)
Parametry
- input
- TextReader
Obsahující TextReader
data XML, která se mají číst.
Příklady
Následující příklad načte řetězec XML do objektu XmlTextReader
pomocí StringReader třídy.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
String^ xmlData = "<book>\r\n <title>Oberon's Legacy</title>\r\n <price>5.95</price>\r\n </book>";
// Create the reader.
XmlTextReader^ reader = gcnew XmlTextReader( gcnew StringReader( xmlData ) );
reader->WhitespaceHandling = WhitespaceHandling::None;
// Display each element node.
while ( reader->Read() )
{
switch ( reader->NodeType )
{
case XmlNodeType::Element:
Console::Write( "<{0}>", reader->Name );
break;
case XmlNodeType::Text:
Console::Write( reader->Value );
break;
case XmlNodeType::EndElement:
Console::Write( "</{0}>", reader->Name );
break;
}
}
// Close the reader.
reader->Close();
}
using System;
using System.IO;
using System.Xml;
public class Sample {
public static void Main() {
string xmlData =
@"<book>
<title>Oberon's Legacy</title>
<price>5.95</price>
</book>";
// Create the reader.
XmlTextReader reader = new XmlTextReader(new StringReader(xmlData));
reader.WhitespaceHandling = WhitespaceHandling.None;
// Display each element node.
while (reader.Read()){
switch (reader.NodeType){
case XmlNodeType.Element:
Console.Write("<{0}>", reader.Name);
break;
case XmlNodeType.Text:
Console.Write(reader.Value);
break;
case XmlNodeType.EndElement:
Console.Write("</{0}>", reader.Name);
break;
}
}
// Close the reader.
reader.Close();
}
} // End class
Imports System.IO
Imports System.Xml
public class Sample
public shared sub Main()
Dim xmlData as string
xmlData = "<book>" & _
" <title>Oberon's Legacy</title>" & _
" <price>5.95</price>" & _
"</book>"
' Create the reader.
Dim reader as XmlTextReader = new XmlTextReader(new StringReader(xmlData))
reader.WhitespaceHandling = WhitespaceHandling.None
' Display each element node.
while reader.Read()
select case reader.NodeType
case XmlNodeType.Element
Console.Write("<{0}>", reader.Name)
case XmlNodeType.Text
Console.Write(reader.Value)
case XmlNodeType.EndElement
Console.Write("</{0}>", reader.Name)
end select
end while
' Close the reader.
reader.Close()
end sub
end class
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Předpokládá se, že TextReader
je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.
Viz také
Platí pro
XmlTextReader(Stream)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadaným datovým proudem.
public:
XmlTextReader(System::IO::Stream ^ input);
public XmlTextReader (System.IO.Stream input);
new System.Xml.XmlTextReader : System.IO.Stream -> System.Xml.XmlTextReader
Public Sub New (input As Stream)
Parametry
- input
- Stream
Datový proud obsahující data XML, která se mají číst.
Výjimky
input
je null
.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Dekóduje XmlTextReader datový proud pomocí System.Text.Encoding.
Viz také
Platí pro
XmlTextReader(TextReader, XmlNameTable)
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
- Zdroj:
- XmlTextReader.cs
Inicializuje novou instanci XmlTextReader třídy se zadanými TextReader a XmlNameTable.
public:
XmlTextReader(System::IO::TextReader ^ input, System::Xml::XmlNameTable ^ nt);
public XmlTextReader (System.IO.TextReader input, System.Xml.XmlNameTable nt);
new System.Xml.XmlTextReader : System.IO.TextReader * System.Xml.XmlNameTable -> System.Xml.XmlTextReader
Public Sub New (input As TextReader, nt As XmlNameTable)
Parametry
- input
- TextReader
Obsahující TextReader
data XML, která se mají číst.
- nt
- XmlNameTable
Příkaz XmlNameTable
, který se má použít.
Výjimky
Hodnota nt
je null
.
Poznámky
Poznámka
Počínaje rozhraním .NET Framework 2.0 doporučujeme vytvářet XmlReader instance pomocí XmlReader.Create metody, abyste mohli využívat nové funkce.
Předpokládá se, že TextReader
je již nastaven na správné kódování. Používají ho klienti, kteří už přečetli některé věci ze streamu ve scénáři MIME s více částmi.