英語で読む

次の方法で共有


XmlNameTable クラス

定義

最小単位に分割された文字列オブジェクトのテーブル。

C#
public abstract class XmlNameTable
継承
XmlNameTable
派生

次の例では、2 つの要素名を比較します。

C#

// Add the element names to the NameTable.
NameTable nt = new NameTable();
object book = nt.Add("book");
object title = nt.Add("title");

 // Create a reader that uses the NameTable.
 XmlReaderSettings settings = new XmlReaderSettings();
 settings.NameTable = nt;
 XmlReader reader = XmlReader.Create("books.xml", settings);

 while (reader.Read()) {
    if (reader.NodeType == XmlNodeType.Element) {
      // Cache the local name to prevent multiple calls to the LocalName property.
      object localname = reader.LocalName;

      // Do a comparison between the object references. This just compares pointers.
      if (book == localname) {
          // Add additional processing here.
      }
      // Do a comparison between the object references. This just compares pointers.
      if (title == localname) {
         // Add additional processing here.
      }
    }
 }  // End While

// Close the reader.
reader.Close();

注釈

また、内部的にこのクラスを使用して属性名とXmlReader要素名をXmlNameTable格納するクラスなどXmlDocument、いくつかのクラスがあります。 要素名または属性名が XML ドキュメントに複数回、出現した場合は、XmlNameTable に 1 回だけ格納されます。

名前は、共通言語ランタイム (CLR) オブジェクト型として格納されます。 これにより、負荷の高い文字列比較ではなく、これらの文字列でオブジェクト比較を実行できます。 これらの文字列オブジェクトは、"アトミック化された文字列" と呼ばれます。

XmlNameTable はクラスに NameTable 実装されます。

コンストラクター

XmlNameTable()

XmlNameTable クラスの新しいインスタンスを初期化します。

メソッド

Add(Char[], Int32, Int32)

派生クラスでオーバーライドされると、指定した文字列を最小単位に分割し、XmlNameTable に追加します。

Add(String)

派生クラスでオーバーライドされると、指定した文字列を最小単位に分割し、XmlNameTable に追加します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
Get(Char[], Int32, Int32)

派生クラスでオーバーライドされると、指定した配列内の指定した範囲の文字と同じ文字を含む、最小単位に分割された文字列を取得します。

Get(String)

派生クラスでオーバーライドされると、指定した文字列と同じ値を含む最小単位に分割された文字列を取得します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象

製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

こちらもご覧ください