次の方法で共有


XmlValidatingReader.AttributeCount プロパティ

現在のノードにある属性の数を取得します。

Overrides Public ReadOnly Property AttributeCount As Integer
[C#]
public override int AttributeCount {get;}
[C++]
public: __property int get_AttributeCount();
[JScript]
public override function get AttributeCount() : int;

プロパティ値

現在のノードにある属性の数。この属性数には、既定の属性も含まれます。

解説

このプロパティは、Element、 DocumentTypeXmlDeclaration の各ノードだけに関連します。他のノード型は、属性を持ちません。

使用例

[Visual Basic, C#, C++] ルート ノードのすべての要素を読み取る例を次に示します。

 
Option Strict
Option Explicit

Imports System
Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        Dim reader As XmlValidatingReader = Nothing
        
        Try
            'Create the string to parse.
            Dim xmlFrag As String = "<book genre='novel' ISBN='1-861003-78' pubdate='1987'></book> "
            
            'Create the XmlNamespaceManager.
            Dim nt As New NameTable()
            Dim nsmgr As New XmlNamespaceManager(nt)
            
            'Create the XmlParserContext.
            Dim context As New XmlParserContext(Nothing, nsmgr, Nothing, XmlSpace.None)
            
            'Create the XmlValidatingReader .
            reader = New XmlValidatingReader(xmlFrag, XmlNodeType.Element, context)
            
            'Read the attributes on the root element.
            reader.MoveToContent()
            If reader.HasAttributes Then
                Dim i As Integer
                For i = 0 To reader.AttributeCount - 1
                    reader.MoveToAttribute(i)
                    Console.WriteLine("{0} = {1}", reader.Name, reader.Value)
                Next i
                'Move the reader back to the node that owns the attribute.
                reader.MoveToElement()
            End If
        
        
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub 'Main ' End class

[C#] 
using System;
using System.IO;
using System.Xml;

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

    try
    {
       //Create the string to parse.
       string xmlFrag="<book genre='novel' ISBN='1-861003-78' pubdate='1987'></book> ";

       //Create the XmlNamespaceManager.
       NameTable nt = new NameTable();
       XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);

       //Create the XmlParserContext.
       XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);

       //Create the XmlValidatingReader .
       reader = new XmlValidatingReader(xmlFrag, XmlNodeType.Element, context);
  
       //Read the attributes on the root element.
       reader.MoveToContent();
       if (reader.HasAttributes){
         for (int i=0; i<reader.AttributeCount; i++){
            reader.MoveToAttribute(i);
            Console.WriteLine("{0} = {1}", reader.Name, reader.Value);
         }
         //Move the reader back to the node that owns the attribute.
         reader.MoveToElement();
       }

     } 

     finally 
     {
        if (reader != null)
          reader.Close();
      }
  }
} // End class

[C++] 
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;

int main()
{
   XmlValidatingReader* reader = 0;

   try
   {
      //Create the string to parse.
      String* xmlFrag=S"<book genre='novel' ISBN='1-861003-78' pubdate='1987'></book> ";

      //Create the XmlNamespaceManager.
      NameTable* nt = new NameTable();
      XmlNamespaceManager* nsmgr = new XmlNamespaceManager(nt);

      //Create the XmlParserContext.
      XmlParserContext* context = new XmlParserContext(0, nsmgr, 0, XmlSpace::None);

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

      //Read the attributes on the root element.
      reader->MoveToContent();
      if (reader->HasAttributes){
         for (int i=0; i<reader->AttributeCount; i++){
            reader->MoveToAttribute(i);
            Console::WriteLine(S"{0} = {1}", reader->Name, reader->Value);
         }
         //Move the reader back to the node that owns the attribute.
         reader->MoveToElement();
      }

   } 

   __finally 
   {
      if (reader != 0)
         reader->Close();
   }
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

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