XmlValidatingReader.MoveToAttribute Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Переходит к указанному атрибуту.
Перегрузки
MoveToAttribute(Int32) |
Переходит к атрибуту с указанным индексом. |
MoveToAttribute(String) |
Переходит к атрибуту с указанным именем. |
MoveToAttribute(String, String) |
Переходит к атрибуту с заданным локальным именем и URI пространства имен. |
MoveToAttribute(Int32)
- Исходный код:
- XmlValidatingReader.cs
- Исходный код:
- XmlValidatingReader.cs
- Исходный код:
- XmlValidatingReader.cs
Переходит к атрибуту с указанным индексом.
public:
override void MoveToAttribute(int i);
public override void MoveToAttribute (int i);
override this.MoveToAttribute : int -> unit
Public Overrides Sub MoveToAttribute (i As Integer)
Параметры
- i
- Int32
Индекс атрибута.
Исключения
Параметр i
меньше 0 или больше или равен AttributeCount.
Примеры
В следующем примере считываются все элементы корневого узла.
#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
Комментарии
Примечание
Класс XmlValidatingReader устарел в платформа .NET Framework 2.0. Вы можете создать проверяющий XmlReader экземпляр с помощью XmlReaderSettings класса и Create метода . Дополнительные сведения см. в подразделе "Примечания" на справочной странице XmlReader.
См. также раздел
Применяется к
MoveToAttribute(String)
- Исходный код:
- XmlValidatingReader.cs
- Исходный код:
- XmlValidatingReader.cs
- Исходный код:
- XmlValidatingReader.cs
Переходит к атрибуту с указанным именем.
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
Параметры
- name
- String
Полное имя атрибута.
Возвращаемое значение
Значение true
, если атрибут найден; в противном случае — false
. Если значение false
, позиция средства чтения не изменяется.
Примеры
В следующем примере считывается атрибут с узлами ссылки на текст и сущность.
#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
Комментарии
Примечание
Класс XmlValidatingReader устарел в платформа .NET Framework 2.0. Вы можете создать проверяющий XmlReader экземпляр с помощью XmlReaderSettings класса и Create метода . Дополнительные сведения см. в подразделе "Примечания" на справочной странице XmlReader.
После вызова этого метода Nameсвойства , NamespaceURIи Prefix отражают свойства этого атрибута.
См. также раздел
Применяется к
MoveToAttribute(String, String)
- Исходный код:
- XmlValidatingReader.cs
- Исходный код:
- XmlValidatingReader.cs
- Исходный код:
- XmlValidatingReader.cs
Переходит к атрибуту с заданным локальным именем и URI пространства имен.
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
Параметры
- localName
- String
Локальное имя атрибута.
- namespaceURI
- String
Универсальный код ресурса (URI) пространства имен атрибута.
Возвращаемое значение
Значение true
, если атрибут найден; в противном случае — false
. Если значение false
, позиция средства чтения не изменяется.
Комментарии
Примечание
Класс XmlValidatingReader устарел в платформа .NET Framework 2.0. Вы можете создать проверяющий XmlReader экземпляр с помощью XmlReaderSettings класса и Create метода . Дополнительные сведения см. в подразделе "Примечания" на справочной странице XmlReader.
После вызова этого метода Nameсвойства , NamespaceURIи Prefix отражают свойства этого атрибута.