XmlValidatingReader.MoveToAttribute Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wechselt zum angegebenen Attribut.
Überlädt
MoveToAttribute(Int32) |
Wechselt zum Attribut mit dem angegebenen Index. |
MoveToAttribute(String) |
Wechselt zum Attribut mit dem angegebenen Namen. |
MoveToAttribute(String, String) |
Wechselt zu dem Attribut mit dem angegebenen lokalen Namen und Namespace-URI (Uniform Resource Identifier). |
MoveToAttribute(Int32)
Wechselt zum Attribut mit dem angegebenen Index.
public:
override void MoveToAttribute(int i);
public override void MoveToAttribute (int i);
override this.MoveToAttribute : int -> unit
Public Overrides Sub MoveToAttribute (i As Integer)
Parameter
- i
- Int32
Der Index des Attributs.
Ausnahmen
Der i
-Parameter ist kleiner als 0 (null) oder größer als oder gleich AttributeCount.
Beispiele
Im folgenden Beispiel werden alle Elemente im Stammknoten gelesen.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlValidatingReader^ reader = nullptr;
try
{
//Create the string to parse.
String^ xmlFrag = "<book genre='novel' ISBN='1-861003-78' pubdate='1987'></book> ";
//Create the XmlNamespaceManager.
NameTable^ nt = gcnew NameTable;
XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager( nt );
//Create the XmlParserContext.
XmlParserContext^ context = gcnew XmlParserContext( nullptr,nsmgr,nullptr,XmlSpace::None );
//Create the XmlValidatingReader .
reader = gcnew 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 );
}
reader->MoveToElement();
}
}
finally
{
if ( reader != nullptr )
reader->Close();
}
}
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
Option Strict
Option Explicit
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
End Class
Hinweise
Hinweis
Die XmlValidatingReader Klasse ist in .NET Framework 2.0 veraltet. Sie können eine Überprüfungsinstanz XmlReader mithilfe der XmlReaderSettings Klasse und der Create Methode erstellen. Weitere Informationen finden Sie im Abschnitt Hinweise unter der XmlReader Referenzseite.
Siehe auch
Gilt für
MoveToAttribute(String)
Wechselt zum Attribut mit dem angegebenen Namen.
public:
override bool MoveToAttribute(System::String ^ name);
public override bool MoveToAttribute (string name);
override this.MoveToAttribute : string -> bool
Public Overrides Function MoveToAttribute (name As String) As Boolean
Parameter
- name
- String
Der qualifizierte Name des Attributs.
Gibt zurück
true
, wenn das Attribut gefunden wurde, andernfalls false
. Bei false
ändert sich die Position des Readers nicht.
Beispiele
Im folgenden Beispiel wird ein Attribut mit Text- und Entitätsreferenzknoten gelesen.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlValidatingReader^ reader = nullptr;
try
{
//Create the XML fragment to be parsed.
String^ xmlFrag = "<book genre='novel' misc='sale-item &h; 1987'></book>";
//Create the XmlParserContext.
XmlParserContext^ context;
String^ subset = "<!ENTITY h 'hardcover'>";
context = gcnew XmlParserContext( nullptr,nullptr,"book",nullptr,nullptr,subset,"","",XmlSpace::None );
//Create the reader and set it to not expand general entities.
reader = gcnew XmlValidatingReader( xmlFrag,XmlNodeType::Element,context );
reader->ValidationType = ValidationType::None;
reader->EntityHandling = EntityHandling::ExpandCharEntities;
//Read the misc attribute. Because EntityHandling is set to
//ExpandCharEntities, the attribute is parsed into multiple text
//and entity reference nodes.
reader->MoveToContent();
reader->MoveToAttribute( "misc" );
while ( reader->ReadAttributeValue() )
{
if ( reader->NodeType == XmlNodeType::EntityReference )
//To expand the entity, call ResolveEntity.
Console::WriteLine( "{0} {1}", reader->NodeType, reader->Name );
else
Console::WriteLine( "{0} {1}", reader->NodeType, reader->Value );
}
}
finally
{
if ( reader != nullptr )
reader->Close();
}
}
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlValidatingReader reader = null;
try
{
//Create the XML fragment to be parsed.
string xmlFrag ="<book genre='novel' misc='sale-item &h; 1987'></book>";
//Create the XmlParserContext.
XmlParserContext context;
string subset = "<!ENTITY h 'hardcover'>";
context = new XmlParserContext(null, null, "book", null, null, subset, "", "", XmlSpace.None);
//Create the reader and set it to not expand general entities.
reader = new XmlValidatingReader(xmlFrag, XmlNodeType.Element, context);
reader.ValidationType = ValidationType.None;
reader.EntityHandling = EntityHandling.ExpandCharEntities;
//Read the misc attribute. Because EntityHandling is set to
//ExpandCharEntities, the attribute is parsed into multiple text
//and entity reference nodes.
reader.MoveToContent();
reader.MoveToAttribute("misc");
while (reader.ReadAttributeValue()){
if (reader.NodeType==XmlNodeType.EntityReference)
//To expand the entity, call ResolveEntity.
Console.WriteLine("{0} {1}", reader.NodeType, reader.Name);
else
Console.WriteLine("{0} {1}", reader.NodeType, reader.Value);
}
}
finally
{
if (reader != null)
reader.Close();
}
}
} // End class
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim reader As XmlValidatingReader = Nothing
Try
'Create the XML fragment to be parsed.
Dim xmlFrag As String = "<book genre='novel' misc='sale-item &h; 1987'></book>"
'Create the XmlParserContext.
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 and set it to not expand general entities.
reader = New XmlValidatingReader(xmlFrag, XmlNodeType.Element, context)
reader.ValidationType = ValidationType.None
reader.EntityHandling = EntityHandling.ExpandCharEntities
'Read the misc attribute. Because EntityHandling is set to
'ExpandCharEntities, the attribute is parsed into multiple text
'and entity reference nodes.
reader.MoveToContent()
reader.MoveToAttribute("misc")
While reader.ReadAttributeValue()
If reader.NodeType = XmlNodeType.EntityReference Then
'To expand the entity, call ResolveEntity.
Console.WriteLine("{0} {1}", reader.NodeType, reader.Name)
Else
Console.WriteLine("{0} {1}", reader.NodeType, reader.Value)
End If
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
Hinweise
Hinweis
Die XmlValidatingReader Klasse ist in .NET Framework 2.0 veraltet. Sie können eine Überprüfungsinstanz XmlReader mithilfe der XmlReaderSettings Klasse und der Create Methode erstellen. Weitere Informationen finden Sie im Abschnitt Hinweise unter der XmlReader Referenzseite.
Nach dem Aufrufen dieser Methode spiegeln die Eigenschaften dieses Attributs die NameNamespaceURIPrefix Eigenschaften des Attributs wider.
Siehe auch
Gilt für
MoveToAttribute(String, String)
Wechselt zu dem Attribut mit dem angegebenen lokalen Namen und Namespace-URI (Uniform Resource Identifier).
public:
override bool MoveToAttribute(System::String ^ localName, System::String ^ namespaceURI);
public override bool MoveToAttribute (string localName, string? namespaceURI);
public override bool MoveToAttribute (string localName, string namespaceURI);
override this.MoveToAttribute : string * string -> bool
Public Overrides Function MoveToAttribute (localName As String, namespaceURI As String) As Boolean
Parameter
- localName
- String
Der lokale Name des Attributs.
- namespaceURI
- String
Der Namespace-URI dieses Attributs.
Gibt zurück
true
, wenn das Attribut gefunden wurde, andernfalls false
. Bei false
ändert sich die Position des Readers nicht.
Hinweise
Hinweis
Die XmlValidatingReader Klasse ist in .NET Framework 2.0 veraltet. Sie können eine Überprüfungsinstanz XmlReader mithilfe der XmlReaderSettings Klasse und der Create Methode erstellen. Weitere Informationen finden Sie im Abschnitt Hinweise unter der XmlReader Referenzseite.
Nach dem Aufrufen dieser Methode spiegeln die Eigenschaften dieses Attributs die NameNamespaceURIPrefix Eigenschaften des Attributs wider.