XmlTextReader Constructeurs
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Initialise une nouvelle instance de l'objet XmlTextReader.
Surcharges
XmlTextReader() |
Initialise une nouvelle instance de l'objet |
XmlTextReader(String, XmlNodeType, XmlParserContext) |
Initialise une nouvelle instance de la classe XmlTextReader avec la chaîne, le XmlNodeType et le XmlParserContext spécifiés. |
XmlTextReader(String, TextReader, XmlNameTable) |
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le TextReader et le XmlNameTable spécifiés. |
XmlTextReader(String, Stream, XmlNameTable) |
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le flux et le XmlNameTable spécifiés. |
XmlTextReader(Stream, XmlNodeType, XmlParserContext) |
Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié, XmlNodeType et XmlParserContext. |
XmlTextReader(String, TextReader) |
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le TextReader spécifiés. |
XmlTextReader(String, Stream) |
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le flux spécifiés. |
XmlTextReader(String, XmlNameTable) |
Initialise une nouvelle instance de la classe XmlTextReader avec le fichier et le XmlNameTable spécifiés. |
XmlTextReader(Stream, XmlNameTable) |
Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié et XmlNameTable. |
XmlTextReader(XmlNameTable) |
Initialise une nouvelle instance de la classe XmlTextReader avec le XmlNameTable spécifié. |
XmlTextReader(String) |
Initialise une nouvelle instance de la classe XmlTextReader avec le fichier spécifié. |
XmlTextReader(TextReader) |
Initialise une nouvelle instance de la classe XmlTextReader avec le TextReader spécifié. |
XmlTextReader(Stream) |
Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié. |
XmlTextReader(TextReader, XmlNameTable) |
Initialise une nouvelle instance de la classe XmlTextReader avec les TextReader et XmlNameTable spécifiés. |
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
XmlTextReader()
Initialise une nouvelle instance de l'objet XmlTextReader
.
protected:
XmlTextReader();
protected XmlTextReader ();
Protected Sub New ()
Voir aussi
S’applique à
XmlTextReader(String, XmlNodeType, XmlParserContext)
Initialise une nouvelle instance de la classe XmlTextReader avec la chaîne, le XmlNodeType et le XmlParserContext spécifiés.
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)
Paramètres
- xmlFragment
- String
Chaîne contenant le fragment XML à analyser.
- fragType
- XmlNodeType
XmlNodeType du fragment XML. Ceci détermine également ce que la chaîne du fragment peut contenir. Consultez le tableau ci-dessous.
- context
- XmlParserContext
XmlParserContext dans lequel xmlFragment
doit être analysé. Ceci inclut le XmlNameTable à utiliser, l’encodage, la portée de l’espace de noms, le xml:lang
actuel et la portée xml:space
.
Exceptions
fragType
n’est pas un Element
, Attribute
ni un Document
XmlNodeType
.
xmlFragment
a la valeur null
.
Exemples
L’exemple suivant analyse un fragment XML. Il utilise le et son XmlNamespaceManager pour gérer la XmlParserContext
résolution d’espace de noms.
#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
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Ce constructeur analyse la chaîne donnée sous la forme d’un fragment de XML. Si le fragment XML est un élément ou un attribut, vous pouvez contourner les règles de niveau racine pour les documents XML bien formés. Ce constructeur peut gérer les chaînes retournées par ReadInnerXml.
Le tableau suivant répertorie les valeurs valides pour fragType
et la façon dont le lecteur analyse chacun des différents types de nœuds.
XmlNodeType | Le fragment peut contenir |
---|---|
Élément | Tout contenu d’élément valide (par exemple, toute combinaison d’éléments, commentaires, instructions de traitement, sections CDATA, texte et références d’entité). Une déclaration XML peut également être fournie. Cela vous permet de spécifier l’encodage pour le fragment XML, plutôt que de devoir le définir sur l’objet XmlParserContext . |
Attribut | Valeur d’un attribut (partie à l’intérieur des guillemets). |
Document | Le contenu d'un document XML entier. Cela applique les règles de niveau document. |
Voir aussi
S’applique à
XmlTextReader(String, TextReader, XmlNameTable)
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le TextReader et le XmlNameTable spécifiés.
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)
Paramètres
- url
- String
URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI. Si url
a la valeur null
, BaseURI
a la valeur String.Empty
.
- input
- TextReader
TextReader
contenant les données XML à lire.
- nt
- XmlNameTable
XmlNameTable
à utiliser.
Exceptions
nt
a la valeur null
.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
On suppose que TextReader
est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.
Voir aussi
S’applique à
XmlTextReader(String, Stream, XmlNameTable)
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL, le flux et le XmlNameTable spécifiés.
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)
Paramètres
- url
- String
URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI. Si url
a la valeur null
, BaseURI
a la valeur String.Empty
.
- input
- Stream
Flux contenant les données XML à lire.
- nt
- XmlNameTable
XmlNameTable
à utiliser.
Exceptions
La valeur de input
ou de nt
est null
.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Voir aussi
S’applique à
XmlTextReader(Stream, XmlNodeType, XmlParserContext)
Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié, XmlNodeType et 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)
Paramètres
- xmlFragment
- Stream
Flux contenant le fragment XML à analyser.
- fragType
- XmlNodeType
XmlNodeType du fragment XML. Ceci détermine également ce que le fragment peut contenir. Consultez le tableau ci-dessous.
- context
- XmlParserContext
XmlParserContext dans lequel xmlFragment
doit être analysé. Ceci inclut le XmlNameTable à utiliser, l’encodage, la portée de l’espace de noms, le xml:lang
actuel et la portée xml:space
.
Exceptions
fragType
n'est pas un XmlNodeType
Element, Attribute ou Document.
xmlFragment
a la valeur null
.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Ce constructeur analyse la chaîne donnée sous la forme d’un fragment de XML. Si le fragment XML est un élément ou un attribut, vous pouvez contourner les règles de niveau racine pour les documents XML bien formés.
Le tableau suivant répertorie les valeurs valides pour fragType
.
XmlNodeType | Le fragment peut contenir |
---|---|
Element |
Tout contenu d’élément valide (par exemple, toute combinaison d’éléments, commentaires, instructions de traitement, sections CDATA, texte et références d’entité). Une déclaration XML peut également être fournie. Cela vous permet de spécifier l’encodage pour le fragment XML, plutôt que de devoir le définir sur l’objet XmlParserContext . |
Attribute |
Valeur d’un attribut (partie à l’intérieur des guillemets). |
Document |
Le contenu d'un document XML entier. Cela applique les règles de niveau document. |
Le lecteur utilise les éléments suivants pour déterminer l’encodage du flux.
Vérifie la XmlParserContext.Encoding propriété pour déterminer l’encodage.
Si la
Encoding
propriété estnull
, le lecteur recherche une marque d’ordre d’octet au début du flux.Si la
Encoding
propriété estnull
, et qu’aucune marque d’ordre d’octet n’est trouvée, le lecteur suppose que le flux est encodé en UTF-8.
Voir aussi
S’applique à
XmlTextReader(String, TextReader)
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le TextReader spécifiés.
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)
Paramètres
- url
- String
URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI.
- input
- TextReader
TextReader
contenant les données XML à lire.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
On suppose que TextReader
est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.
Voir aussi
S’applique à
XmlTextReader(String, Stream)
Initialise une nouvelle instance de la classe XmlTextReader avec l'URL et le flux spécifiés.
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)
Paramètres
- url
- String
URL à utiliser pour résoudre les ressources externes. Cette valeur est affectée à la propriété BaseURI.
- input
- Stream
Flux contenant les données XML à lire.
Exceptions
input
a la valeur null
.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Voir aussi
S’applique à
XmlTextReader(String, XmlNameTable)
Initialise une nouvelle instance de la classe XmlTextReader avec le fichier et le XmlNameTable spécifiés.
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)
Paramètres
- url
- String
URL du fichier contenant les données XML à lire.
- nt
- XmlNameTable
XmlNameTable
à utiliser.
Exceptions
nt
a la valeur null
.
Le fichier spécifié est introuvable.
Une partie du nom de fichier ou de répertoire est introuvable.
url
est une chaîne vide.
Le nom de fichier distant ne peut pas être résolu.
- ou -
Une erreur s’est produite lors du traitement de la demande.
url
n'est pas un URI valide.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Voir aussi
S’applique à
XmlTextReader(Stream, XmlNameTable)
Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié et 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)
Paramètres
- input
- Stream
Flux contenant les données XML à lire.
- nt
- XmlNameTable
XmlNameTable
à utiliser.
Exceptions
La valeur de input
ou de nt
est null
.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Le XmlTextReader décodage du flux à l’aide System.Text.Encodingde .
Si vous spécifiez une table de noms, ce constructeur utilise les noms déjà définis dans cette table.
Voir aussi
S’applique à
XmlTextReader(XmlNameTable)
Initialise une nouvelle instance de la classe XmlTextReader avec le XmlNameTable spécifié.
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)
Paramètres
- nt
- XmlNameTable
XmlNameTable
à utiliser.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Voir aussi
S’applique à
XmlTextReader(String)
Initialise une nouvelle instance de la classe XmlTextReader avec le fichier spécifié.
public:
XmlTextReader(System::String ^ url);
public XmlTextReader (string url);
new System.Xml.XmlTextReader : string -> System.Xml.XmlTextReader
Public Sub New (url As String)
Paramètres
- url
- String
URL du fichier contenant les données XML. Cette valeur est affectée à la propriété BaseURI.
Exceptions
Le fichier spécifié est introuvable.
Une partie du nom de fichier ou de répertoire est introuvable.
url
est une chaîne vide.
Le nom de fichier distant ne peut pas être résolu.
- ou -
Une erreur s’est produite lors du traitement de la demande.
url
n'est pas un URI valide.
Exemples
L’exemple suivant lit un fichier XML et affiche chacun des nœuds.
#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
L’exemple utilise le fichier, items.xml
comme entrée.
<?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>
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Si le fichier se trouve sur une ressource qui nécessite des informations d’identification d’accès, utilisez la XmlResolver propriété pour spécifier les informations d’identification nécessaires.
Notes
Dans la version 1.1 du .NET Framework, le code partiellement approuvé ne peut pas définir la XmlResolver
propriété. La solution de contournement consiste à créer une XmlUrlResolver avec les informations d’identification nécessaires, à passer l’URI à la XmlUrlResolver.GetEntity méthode, puis à construire l’utilisation XmlTextReader
de l’objet résultant Stream . La solution de contournement est décrite dans le code C# suivant.
// 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);
Voir aussi
S’applique à
XmlTextReader(TextReader)
Initialise une nouvelle instance de la classe XmlTextReader avec le TextReader spécifié.
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)
Paramètres
- input
- TextReader
TextReader
contenant les données XML à lire.
Exemples
L’exemple suivant charge une chaîne XML dans l’objet à l’aide XmlTextReader
de 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
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
On suppose que TextReader
est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.
Voir aussi
S’applique à
XmlTextReader(Stream)
Initialise une nouvelle instance de la classe XmlTextReader avec le flux spécifié.
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)
Paramètres
- input
- Stream
Flux contenant les données XML à lire.
Exceptions
input
a la valeur null
.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
Le XmlTextReader décodage du flux à l’aide System.Text.Encodingde .
Voir aussi
S’applique à
XmlTextReader(TextReader, XmlNameTable)
Initialise une nouvelle instance de la classe XmlTextReader avec les TextReader et XmlNameTable spécifiés.
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)
Paramètres
- input
- TextReader
TextReader
contenant les données XML à lire.
- nt
- XmlNameTable
XmlNameTable
à utiliser.
Exceptions
nt
a la valeur null
.
Remarques
Notes
À compter de .NET Framework 2.0, nous vous recommandons de créer XmlReader des instances à l’aide de la XmlReader.Create méthode pour tirer parti de nouvelles fonctionnalités.
On suppose que TextReader
est déjà défini selon l'encodage approprié. Cela est utilisé par les clients qui ont déjà lu certaines choses à partir du flux dans un scénario MIME en plusieurs parties.