XmlTextReader 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
初始化 XmlTextReader 的新实例。
重载
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
XmlTextReader()
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
初始化 XmlTextReader
的新实例。
protected:
XmlTextReader();
protected XmlTextReader ();
Protected Sub New ()
另请参阅
适用于
XmlTextReader(String, XmlNodeType, XmlParserContext)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的字符串、XmlNodeType 和 XmlParserContext 初始化 XmlTextReader 类的新实例。
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)
参数
- xmlFragment
- String
包含要分析的 XML 片段的字符串。
- fragType
- XmlNodeType
XML 片段的 XmlNodeType。 这也确定了片段字符串可以包含的内容。 (请参见下表。)
- context
- XmlParserContext
分析 xmlFragment
所用的 XmlParserContext。 这包括 XmlNameTable 要使用的 、编码、命名空间范围、当前 xml:lang
和 xml:space
范围。
例外
fragType
不是 Element
Attribute
或 Document
XmlNodeType
。
xmlFragment
为 null
。
示例
以下示例分析 XML 片段。 它使用 XmlParserContext
及其 XmlNamespaceManager 来处理命名空间解析。
#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
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
此构造函数将给定的字符串分析为 XML 片段。 如果 XML 片段是元素或属性,则可以绕过格式正确的 XML 文档的根级别规则。 此构造函数可以处理从 ReadInnerXml返回的字符串。
下表列出了 的有效 fragType
值以及读取器如何分析每个不同节点类型。
XmlNodeType | 片段可能包含 |
---|---|
元素 | 任何有效的元素内容 (例如元素、注释、处理指令、CDATA 节、文本和实体引用的任意组合) 。 还可以提供 XML 声明。 这使你可以指定 XML 片段的编码,而不必在 对象上 XmlParserContext 设置它。 |
Attribute | 属性的值 (引号) 内的部件。 |
文档 | 整个 XML 文档的内容。 这会强制实施文档级别规则。 |
另请参阅
适用于
XmlTextReader(String, TextReader, XmlNameTable)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的 URL、TextReader 和 XmlNameTable 初始化 XmlTextReader 类的新实例。
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)
参数
- input
- TextReader
包含要读取的 XML 数据的 TextReader
。
- nt
- XmlNameTable
要使用的 XmlNameTable
。
例外
nt
值为 null
。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
假定 TextReader
已设置为正确的编码方式。 这由已在多部分 MIME 方案中从流中读取某些内容的客户端使用。
另请参阅
适用于
XmlTextReader(String, Stream, XmlNameTable)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的 URL、流和 XmlNameTable 初始化 XmlTextReader 类的新实例。
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)
参数
- input
- Stream
包含要读取的 XML 数据的流。
- nt
- XmlNameTable
要使用的 XmlNameTable
。
例外
input
或 nt
值为 null
。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
另请参阅
适用于
XmlTextReader(Stream, XmlNodeType, XmlParserContext)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
用指定的流、XmlNodeType 和 XmlParserContext 初始化 XmlTextReader 类的新实例。
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)
参数
- xmlFragment
- Stream
包含要分析的 XML 片段的流。
- fragType
- XmlNodeType
XML 片段的 XmlNodeType。 这也确定了片段可以包含的内容。 (请参见下表。)
- context
- XmlParserContext
分析 xmlFragment
所用的 XmlParserContext。 这包括 XmlNameTable 要使用的 、编码、命名空间范围、当前 xml:lang
和 xml:space
范围。
例外
fragType
不是 Element、Attribute 或 Document XmlNodeType
。
xmlFragment
为 null
。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
此构造函数将给定的字符串分析为 XML 片段。 如果 XML 片段是元素或属性,则可以绕过格式正确的 XML 文档的根级别规则。
下表列出了 的有效 fragType
值。
XmlNodeType | 片段可能包含 |
---|---|
Element |
任何有效的元素内容 (例如元素、注释、处理指令、CDATA 节、文本和实体引用的任意组合) 。 还可以提供 XML 声明。 这使你可以指定 XML 片段的编码,而不必在 对象上 XmlParserContext 设置它。 |
Attribute |
属性的值 (引号) 内的部件。 |
Document |
整个 XML 文档的内容。 这会强制实施文档级别规则。 |
读取器使用以下内容来确定流的编码。
XmlParserContext.Encoding检查 属性以确定编码。
Encoding
如果 属性为null
,则读取器将检查流开头的字节顺序标记。Encoding
如果 属性为null
,并且找不到字节顺序标记,则读取器假定流以 UTF-8 编码。
另请参阅
适用于
XmlTextReader(String, TextReader)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的 URL 和 TextReader 初始化 XmlTextReader 类的新实例。
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)
参数
- input
- TextReader
包含要读取的 XML 数据的 TextReader
。
注解
注意
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
假定 TextReader
已设置为正确的编码方式。 这由已在多部分 MIME 方案中从流中读取某些内容的客户端使用。
另请参阅
适用于
XmlTextReader(String, Stream)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的 URL 和流初始化 XmlTextReader 类的新实例。
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)
参数
- input
- Stream
包含要读取的 XML 数据的流。
例外
input
为 null
。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
另请参阅
适用于
XmlTextReader(String, XmlNameTable)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的文件和 XmlNameTable 初始化 XmlTextReader 类的新实例。
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)
参数
- url
- String
包含要读取的 XML 数据的文件的 URL。
- nt
- XmlNameTable
要使用的 XmlNameTable
。
例外
nt
值为 null
。
无法找到指定的文件。
无法找到部分文件名或目录。
url
是一个空字符串。
url
不是有效的 URI。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
另请参阅
适用于
XmlTextReader(Stream, XmlNameTable)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
用指定的流和 XmlNameTable 初始化 XmlTextReader 类的新实例。
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)
参数
- input
- Stream
包含要读取的 XML 数据的流。
- nt
- XmlNameTable
要使用的 XmlNameTable
。
例外
input
或 nt
值为 null
。
注解
注意
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
使用 XmlTextReaderSystem.Text.Encoding解码流。
如果指定名称表,此构造函数将使用已在该表中定义的名称。
另请参阅
适用于
XmlTextReader(XmlNameTable)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的 XmlTextReader 初始化 XmlNameTable 类的新实例。
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)
参数
- nt
- XmlNameTable
要使用的 XmlNameTable
。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
另请参阅
适用于
XmlTextReader(String)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
用指定的文件初始化 XmlTextReader 类的新实例。
public:
XmlTextReader(System::String ^ url);
public XmlTextReader (string url);
new System.Xml.XmlTextReader : string -> System.Xml.XmlTextReader
Public Sub New (url As String)
参数
例外
无法找到指定的文件。
无法找到部分文件名或目录。
url
是一个空字符串。
url
不是有效的 URI。
示例
以下示例读取 XML 文件并显示每个节点。
#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
该示例使用 文件 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>
注解
注意
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
如果文件位于需要访问凭据的资源上,请使用 XmlResolver 属性指定必要的凭据。
备注
在 .NET Framework版本 1.1 中,部分受信任的代码无法设置 XmlResolver
属性。 解决方法是创建XmlUrlResolver具有所需凭据的 ,将 URI 传递给 XmlUrlResolver.GetEntity 方法,然后使用生成的 Stream 对象构造 XmlTextReader
。 以下 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);
另请参阅
适用于
XmlTextReader(TextReader)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的 XmlTextReader 初始化 TextReader 类的新实例。
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)
参数
- input
- TextReader
包含要读取的 XML 数据的 TextReader
。
示例
以下示例使用 StringReader 类将 XmlTextReader
XML 字符串加载到 对象中。
#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
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
假定 TextReader
已设置为正确的编码方式。 这由已在多部分 MIME 方案中从流中读取某些内容的客户端使用。
另请参阅
适用于
XmlTextReader(Stream)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的流初始化 XmlTextReader 类的新实例。
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)
参数
- input
- Stream
包含要读取的 XML 数据的流。
例外
input
为 null
。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
使用 XmlTextReaderSystem.Text.Encoding解码流。
另请参阅
适用于
XmlTextReader(TextReader, XmlNameTable)
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
- Source:
- XmlTextReader.cs
使用指定的 XmlTextReader 和 TextReader 初始化 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)
参数
- input
- TextReader
包含要读取的 XML 数据的 TextReader
。
- nt
- XmlNameTable
要使用的 XmlNameTable
。
例外
nt
值为 null
。
注解
备注
从 .NET Framework 2.0 开始,建议使用 XmlReader.Create 方法创建XmlReader实例,以利用新功能。
假定 TextReader
已设置为正确的编码方式。 这由已在多部分 MIME 方案中从流中读取某些内容的客户端使用。