次の方法で共有


XmlParserContext コンストラクタ (XmlNameTable, XmlNamespaceManager, String, String, String, String, String, String, XmlSpace)

XmlNameTableXmlNamespaceManager、ベース URI、xml:langxml:space、ドキュメント型のそれぞれの値を指定して、XmlParserContext クラスの新しいインスタンスを初期化します。

名前空間: System.Xml
アセンブリ: System.Xml (system.xml.dll 内)

構文

'宣言
Public Sub New ( _
    nt As XmlNameTable, _
    nsMgr As XmlNamespaceManager, _
    docTypeName As String, _
    pubId As String, _
    sysId As String, _
    internalSubset As String, _
    baseURI As String, _
    xmlLang As String, _
    xmlSpace As XmlSpace _
)
'使用
Dim nt As XmlNameTable
Dim nsMgr As XmlNamespaceManager
Dim docTypeName As String
Dim pubId As String
Dim sysId As String
Dim internalSubset As String
Dim baseURI As String
Dim xmlLang As String
Dim xmlSpace As XmlSpace

Dim instance As New XmlParserContext(nt, nsMgr, docTypeName, pubId, sysId, internalSubset, baseURI, xmlLang, xmlSpace)
public XmlParserContext (
    XmlNameTable nt,
    XmlNamespaceManager nsMgr,
    string docTypeName,
    string pubId,
    string sysId,
    string internalSubset,
    string baseURI,
    string xmlLang,
    XmlSpace xmlSpace
)
public:
XmlParserContext (
    XmlNameTable^ nt, 
    XmlNamespaceManager^ nsMgr, 
    String^ docTypeName, 
    String^ pubId, 
    String^ sysId, 
    String^ internalSubset, 
    String^ baseURI, 
    String^ xmlLang, 
    XmlSpace xmlSpace
)
public XmlParserContext (
    XmlNameTable nt, 
    XmlNamespaceManager nsMgr, 
    String docTypeName, 
    String pubId, 
    String sysId, 
    String internalSubset, 
    String baseURI, 
    String xmlLang, 
    XmlSpace xmlSpace
)
public function XmlParserContext (
    nt : XmlNameTable, 
    nsMgr : XmlNamespaceManager, 
    docTypeName : String, 
    pubId : String, 
    sysId : String, 
    internalSubset : String, 
    baseURI : String, 
    xmlLang : String, 
    xmlSpace : XmlSpace
)

パラメータ

  • nt
    文字列を最小単位に分割するために使用する XmlNameTable。このパラメータが null 参照 (Visual Basic では Nothing) の場合は、nsMgr を構築するために使用される名前テーブルが代わりに使用されます。最小単位に分割された文字列の詳細については、XmlNameTable のトピックを参照してください。
  • nsMgr
    名前空間情報を検索するために使用する XmlNamespaceManager。または null 参照 (Visual Basic では Nothing)。
  • docTypeName
    ドキュメント型宣言の名前。
  • pubId
    パブリック識別子。
  • sysId
    システム識別子。
  • internalSubset
    内部 DTD サブセット。
  • baseURI
    XML フラグメントのベース URI (フラグメントの読み込み元の場所)。
  • xmlLang
    xml:lang スコープ。
  • xmlSpace
    xml:space スコープを示す XmlSpace 値。

例外

例外の種類 条件

XmlException

nt が、nsMgr を構築するために使用される XmlNameTable と異なります。

解説

このコンストラクタは、XmlValidatingReader が必要とする DocumentType 情報をすべて提供します。この XmlParserContextXmlTextReader に渡されると、DTD 情報はすべて無視されます。

使用例

XmlParserContext を使用して、XML フラグメントを読み取る例を次に示します。

Option Explicit On
Option Strict On

Imports System
Imports System.IO
Imports System.Xml

Public Class Sample

    Public Shared Sub Main()
        Dim reader As XmlTextReader = Nothing
        Try
            'Create the XML fragment to be parsed.
            Dim xmlFrag As String = "<book genre='novel' misc='sale-item &h;'></book>"

            'Create the XmlParserContext. The XmlParserContext provides the 
            'necessary DTD information so that the entity reference can be expanded.
            Dim context As XmlParserContext
            Dim subset As String = "<!ENTITY h 'hardcover'>"
            context = New XmlParserContext(Nothing, Nothing, "book", Nothing, Nothing, subset, "", "", XmlSpace.None)

            'Create the reader. 
            reader = New XmlTextReader(xmlFrag, XmlNodeType.Element, context)

            'Read the all the attributes on the book element.
            reader.MoveToContent()
            While reader.MoveToNextAttribute()
                Console.WriteLine("{0} = {1}", reader.Name, reader.Value)
            End While
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub 'Main
End Class 'Sample
using System;
using System.IO;
using System.Xml;

public class Sample
{
    public static void Main()
    {
        XmlTextReader reader = null;

        try
        {
            //Create the XML fragment to be parsed.
            string xmlFrag = "<book genre='novel' misc='sale-item &h;'></book>";

            //Create the XmlParserContext. The XmlParserContext provides the 
            //necessary DTD information so that the entity reference can be expanded.
            XmlParserContext context;
            string subset = "<!ENTITY h 'hardcover'>";
            context = new XmlParserContext(null, null, "book", null, null, subset, "", "", XmlSpace.None);

            //Create the reader. 
            reader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context);

            //Read the all the attributes on the book element.
            reader.MoveToContent();
            while (reader.MoveToNextAttribute())
            {
                Console.WriteLine("{0} = {1}", reader.Name, reader.Value);
            }
        }
        finally
        {
            if (reader != null)
                reader.Close();
        }
    }
} // End class

プラットフォーム

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 2.0、1.0

参照

関連項目

XmlParserContext クラス
XmlParserContext メンバ
System.Xml 名前空間