XmlTextReader Costruttori
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.
Inizializza una nuova istanza dell'oggetto XmlTextReader.
Overload
XmlTextReader() |
Inizializza una nuova istanza dell'oggetto |
XmlTextReader(String, XmlNodeType, XmlParserContext) |
Inizializza una nuova istanza della classe XmlTextReader con la stringa e gli oggetti XmlNodeType e XmlParserContext specificati. |
XmlTextReader(String, TextReader, XmlNameTable) |
Inizializza una nuova istanza della classe XmlTextReader con l'URL e gli oggetti TextReader e XmlNameTable specificati. |
XmlTextReader(String, Stream, XmlNameTable) |
Inizializza una nuova istanza della classe XmlTextReader con l'URL, il flusso e l'oggetto XmlNameTable specificati. |
XmlTextReader(Stream, XmlNodeType, XmlParserContext) |
Inizializza una nuova istanza della classe XmlTextReader con il flusso e gli oggetti XmlNodeType e XmlParserContext specificati. |
XmlTextReader(String, TextReader) |
Inizializza una nuova istanza della classe XmlTextReader con l'URL e l'oggetto TextReader specificati. |
XmlTextReader(String, Stream) |
Inizializza una nuova istanza della classe XmlTextReader con l'URL e il flusso specificati. |
XmlTextReader(String, XmlNameTable) |
Inizializza una nuova istanza della classe XmlTextReader con il file e l'oggetto XmlNameTable specificati. |
XmlTextReader(Stream, XmlNameTable) |
Inizializza una nuova istanza della classe XmlTextReader con il flusso e l'oggetto XmlNameTable specificati. |
XmlTextReader(XmlNameTable) |
Inizializza una nuova istanza della classe XmlTextReader con l'oggetto XmlNameTable specificato. |
XmlTextReader(String) |
Inizializza una nuova istanza della classe XmlTextReader con il file specificato. |
XmlTextReader(TextReader) |
Inizializza una nuova istanza della classe XmlTextReader con l'oggetto TextReader specificato. |
XmlTextReader(Stream) |
Inizializza una nuova istanza della classe XmlTextReader con il flusso specificato. |
XmlTextReader(TextReader, XmlNameTable) |
Inizializza una nuova istanza della classe XmlTextReader con gli oggetti TextReader e XmlNameTable specificati. |
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
XmlTextReader()
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza dell'oggetto XmlTextReader
.
protected:
XmlTextReader();
protected XmlTextReader ();
Protected Sub New ()
Vedi anche
Si applica a
XmlTextReader(String, XmlNodeType, XmlParserContext)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con la stringa e gli oggetti XmlNodeType e XmlParserContext specificati.
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)
Parametri
- xmlFragment
- String
Stringa che contiene il frammento XML da analizzare.
- fragType
- XmlNodeType
Oggetto XmlNodeType del frammento XML. Determina anche il possibile contenuto della stringa del frammento. Vedere la tabella seguente.
- context
- XmlParserContext
Oggetto XmlParserContext in cui deve essere analizzato xmlFragment
. Include l'oggetto XmlNameTable da usare, codificare, ambito dello spazio dei nomi, l'ambito corrente xml:lang
e l'ambito xml:space
.
Eccezioni
fragType
non è Element
, Attribute
o Document
XmlNodeType
.
xmlFragment
è null
.
Esempio
Nell'esempio seguente viene analizzato un frammento XML. Usa e XmlParserContext
il relativo XmlNamespaceManager per gestire la risoluzione dello spazio dei nomi.
#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
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare nuove funzionalità.
Questo costruttore analizza la stringa specificata come frammento di XML. Se il frammento XML è un elemento o un attributo, è possibile ignorare le regole di livello radice per documenti XML ben formati. Questo costruttore può gestire le stringhe restituite da ReadInnerXml.
La tabella seguente elenca i valori validi per fragType
e il modo in cui il lettore analizza ognuno dei diversi tipi di nodo.
XmlNodeType | Frammento può contenere |
---|---|
Elemento | Qualsiasi contenuto di elemento valido(ad esempio, qualsiasi combinazione di elementi, commenti, istruzioni di elaborazione, sezioni CDATA, testo e riferimenti alle entità). È possibile fornire anche una dichiarazione XML. In questo modo è possibile specificare la codifica per il frammento XML, anziché dover impostarla sull'oggetto XmlParserContext . |
Attributo | Valore di un attributo (la parte all'interno delle virgolette). |
Documento | Contenuto di un intero documento XML. In questo modo vengono applicate regole a livello di documento. |
Vedi anche
Si applica a
XmlTextReader(String, TextReader, XmlNameTable)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con l'URL e gli oggetti TextReader e XmlNameTable specificati.
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)
Parametri
- url
- String
URL da usare per la risoluzione di risorse esterne. La proprietà BaseURI è impostata su questo valore. Se url
è null
, BaseURI
viene impostato su String.Empty
.
- input
- TextReader
Oggetto TextReader
che contiene i dati XML da leggere.
- nt
- XmlNameTable
Oggetto XmlNameTable
da usare.
Eccezioni
Il valore nt
è null
.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare nuove funzionalità.
Si presuppone che il costruttore TextReader
sia già impostato sulla codifica corretta. Questa operazione viene usata dai client che hanno già letto alcuni elementi dal flusso in uno scenario MIME a più parti.
Vedi anche
Si applica a
XmlTextReader(String, Stream, XmlNameTable)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con l'URL, il flusso e l'oggetto XmlNameTable specificati.
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)
Parametri
- url
- String
URL da usare per la risoluzione di risorse esterne. La proprietà BaseURI è impostata su questo valore. Se url
è null
, BaseURI
viene impostato su String.Empty
.
- input
- Stream
Flusso contenente i dati XML da leggere.
- nt
- XmlNameTable
Oggetto XmlNameTable
da usare.
Eccezioni
Il valore di input
o nt
è null
.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare nuove funzionalità.
Vedi anche
Si applica a
XmlTextReader(Stream, XmlNodeType, XmlParserContext)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con il flusso e gli oggetti XmlNodeType e XmlParserContext specificati.
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)
Parametri
- xmlFragment
- Stream
Flusso contenente il frammento XML da analizzare.
- fragType
- XmlNodeType
Oggetto XmlNodeType del frammento XML. Determina anche il possibile contenuto del frammento. Vedere la tabella seguente.
- context
- XmlParserContext
Oggetto XmlParserContext in cui deve essere analizzato xmlFragment
. Include l'oggetto XmlNameTable da usare, codificare, ambito dello spazio dei nomi, l'ambito corrente xml:lang
e l'ambito xml:space
.
Eccezioni
fragType
non è un XmlNodeType
di tipo Element, Attribute o Document.
xmlFragment
è null
.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare nuove funzionalità.
Questo costruttore analizza la stringa specificata come frammento di XML. Se il frammento XML è un elemento o un attributo, è possibile ignorare le regole di livello radice per documenti XML ben formati.
Nella tabella seguente sono elencati valori validi per fragType
.
XmlNodeType | Frammento può contenere |
---|---|
Element |
Qualsiasi contenuto di elemento valido(ad esempio, qualsiasi combinazione di elementi, commenti, istruzioni di elaborazione, sezioni CDATA, testo e riferimenti alle entità). È possibile fornire anche una dichiarazione XML. In questo modo è possibile specificare la codifica per il frammento XML, anziché dover impostarla sull'oggetto XmlParserContext . |
Attribute |
Valore di un attributo (la parte all'interno delle virgolette). |
Document |
Contenuto di un intero documento XML. In questo modo vengono applicate le regole a livello di documento. |
Il lettore usa quanto segue per determinare la codifica del flusso.
Controlla la XmlParserContext.Encoding proprietà per determinare la codifica.
Se la
Encoding
proprietà ènull
, il lettore verifica la presenza di un contrassegno di ordine di byte all'inizio del flusso.Se la
Encoding
proprietà ènull
e non viene trovato alcun contrassegno di ordine di byte, il lettore presuppone che il flusso sia codificato in UTF-8.
Vedi anche
Si applica a
XmlTextReader(String, TextReader)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con l'URL e l'oggetto TextReader specificati.
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)
Parametri
- url
- String
URL da usare per la risoluzione di risorse esterne. La proprietà BaseURI è impostata su questo valore.
- input
- TextReader
Oggetto TextReader
che contiene i dati XML da leggere.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Si presuppone che il costruttore TextReader
sia già impostato sulla codifica corretta. Viene usato dai client che hanno già letto alcuni elementi dal flusso in uno scenario MIME in più parti.
Vedi anche
Si applica a
XmlTextReader(String, Stream)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con l'URL e il flusso specificati.
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)
Parametri
- url
- String
URL da usare per la risoluzione di risorse esterne. La proprietà BaseURI è impostata su questo valore.
- input
- Stream
Flusso contenente i dati XML da leggere.
Eccezioni
input
è null
.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Vedi anche
Si applica a
XmlTextReader(String, XmlNameTable)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con il file e l'oggetto XmlNameTable specificati.
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)
Parametri
- url
- String
URL del file che contiene i dati XML da leggere.
- nt
- XmlNameTable
Oggetto XmlNameTable
da usare.
Eccezioni
Il valore nt
è null
.
Impossibile trovare il file specificato.
Impossibile trovare parte del nome file o della directory.
Il parametro url
è una stringa vuota.
Il nome file remoto non può essere risolto.
-oppure-
Si è verificato un errore durante l'elaborazione della richiesta.
url
non è un URI valido.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Vedi anche
Si applica a
XmlTextReader(Stream, XmlNameTable)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con il flusso e l'oggetto XmlNameTable specificati.
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)
Parametri
- input
- Stream
Flusso contenente i dati XML da leggere.
- nt
- XmlNameTable
Oggetto XmlNameTable
da usare.
Eccezioni
Il valore di input
o nt
è null
.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Decodifica XmlTextReader il flusso usando System.Text.Encoding.
Se si specifica una tabella dei nomi, questo costruttore usa i nomi definiti già in tale tabella.
Vedi anche
Si applica a
XmlTextReader(XmlNameTable)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con l'oggetto XmlNameTable specificato.
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)
Parametri
- nt
- XmlNameTable
Oggetto XmlNameTable
da usare.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Vedi anche
Si applica a
XmlTextReader(String)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con il file specificato.
public:
XmlTextReader(System::String ^ url);
public XmlTextReader (string url);
new System.Xml.XmlTextReader : string -> System.Xml.XmlTextReader
Public Sub New (url As String)
Parametri
Eccezioni
Impossibile trovare il file specificato.
Impossibile trovare parte del nome file o della directory.
Il parametro url
è una stringa vuota.
Il nome file remoto non può essere risolto.
-oppure-
Si è verificato un errore durante l'elaborazione della richiesta.
url
non è un URI valido.
Esempio
Nell'esempio seguente viene letto un file XML e vengono visualizzati ognuno dei nodi.
#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
Nell'esempio viene usato il file , items.xml
, come input.
<?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>
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Se il file si trova in una risorsa che richiede le credenziali di accesso, usare la XmlResolver proprietà per specificare le credenziali necessarie.
Nota
Nella versione 1.1 di .NET Framework, il codice parzialmente attendibile non può impostare la XmlResolver
proprietà . La soluzione alternativa consiste nel creare un XmlUrlResolver oggetto con le credenziali necessarie, passare l'URI al XmlUrlResolver.GetEntity metodo e quindi costruire XmlTextReader
usando l'oggetto risultante Stream . La soluzione alternativa è descritta nel codice C# seguente.
// 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);
Vedi anche
Si applica a
XmlTextReader(TextReader)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con l'oggetto TextReader specificato.
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)
Parametri
- input
- TextReader
Oggetto TextReader
che contiene i dati XML da leggere.
Esempio
Nell'esempio seguente viene caricata una stringa XML nell'oggetto XmlTextReader
utilizzando la StringReader classe .
#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
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Si presuppone che il costruttore TextReader
sia già impostato sulla codifica corretta. Viene usato dai client che hanno già letto alcuni elementi dal flusso in uno scenario MIME in più parti.
Vedi anche
Si applica a
XmlTextReader(Stream)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con il flusso specificato.
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)
Parametri
- input
- Stream
Flusso contenente i dati XML da leggere.
Eccezioni
input
è null
.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Decodifica XmlTextReader il flusso usando System.Text.Encoding.
Vedi anche
Si applica a
XmlTextReader(TextReader, XmlNameTable)
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
- Origine:
- XmlTextReader.cs
Inizializza una nuova istanza della classe XmlTextReader con gli oggetti TextReader e XmlNameTable specificati.
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)
Parametri
- input
- TextReader
Oggetto TextReader
che contiene i dati XML da leggere.
- nt
- XmlNameTable
Oggetto XmlNameTable
da usare.
Eccezioni
Il valore nt
è null
.
Commenti
Nota
A partire da .NET Framework 2.0, è consigliabile creare XmlReader istanze usando il XmlReader.Create metodo per sfruttare le nuove funzionalità.
Si presuppone che il costruttore TextReader
sia già impostato sulla codifica corretta. Viene usato dai client che hanno già letto alcuni elementi dal flusso in uno scenario MIME in più parti.