XmlNodeReader.Value Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает текстовое значение текущего узла.
public:
virtual property System::String ^ Value { System::String ^ get(); };
public override string Value { get; }
member this.Value : string
Public Overrides ReadOnly Property Value As String
Значение свойства
Возвращаемое значение зависит от NodeType узла. В следующей таблице перечислены типы узлов с возвращаемым значением. Все остальные типы узлов возвращают String.Empty.
| Тип узла | Ценность |
|---|---|
Attribute | Значение атрибута. |
CDATA | Содержимое раздела CDATA. |
Comment | Содержимое комментария. |
DocumentType | Внутреннее подмножество. |
ProcessingInstruction | Все содержимое, за исключением целевого объекта. |
SignificantWhitespace | Пробел между разметкой в смешанной модели содержимого. |
Text | Содержимое текстового узла. |
Whitespace | Пробел между разметкой. |
XmlDeclaration | Содержимое объявления. |
Примеры
В следующем примере считывается XML и отображается каждый узел.
using System;
using System.IO;
using System.Xml;
public class Sample
{
private const String filename = "items.xml";
public static void Main()
{
XmlNodeReader reader = null;
try
{
//Create an XmlNodeReader to read the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.Load(filename);
reader = new XmlNodeReader(doc);
//Parse the file and display each of the nodes.
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
Console.Write("<{0}>", reader.Name);
break;
case XmlNodeType.Text:
Console.Write(reader.Value);
break;
case XmlNodeType.CDATA:
Console.Write(reader.Value);
break;
case XmlNodeType.ProcessingInstruction:
Console.Write("<?{0} {1}?>", reader.Name, reader.Value);
break;
case XmlNodeType.Comment:
Console.Write("<!--{0}-->", reader.Value);
break;
case XmlNodeType.XmlDeclaration:
Console.Write("<?xml version='1.0'?>");
break;
case XmlNodeType.Document:
break;
case XmlNodeType.EndElement:
Console.Write("</{0}>", reader.Name);
break;
}
}
}
finally
{
if (reader!=null)
reader.Close();
}
}
} // End class
Imports System.IO
Imports System.Xml
Public Class Sample
Private Const filename As String = "items.xml"
Public Shared Sub Main()
Dim reader As XmlNodeReader = Nothing
Try
'Create an XmlNodeReader to read the XmlDocument.
Dim doc As New XmlDocument()
doc.Load(filename)
reader = New XmlNodeReader(doc)
'Parse the file and display each of the nodes.
While reader.Read()
Select Case reader.NodeType
Case XmlNodeType.Element
Console.Write("<{0}>", reader.Name)
Case XmlNodeType.Text
Console.Write(reader.Value)
Case XmlNodeType.CDATA
Console.Write(reader.Value)
Case XmlNodeType.ProcessingInstruction
Console.Write("<?{0} {1}?>", reader.Name, reader.Value)
Case XmlNodeType.Comment
Console.Write("<!--{0}-->", reader.Value)
Case XmlNodeType.XmlDeclaration
Console.Write("<?xml version='1.0'?>")
Case XmlNodeType.Document
Case XmlNodeType.EndElement
Console.Write("</{0}>", reader.Name)
End Select
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
В этом примере файл items.xmlиспользуется в качестве входных данных.
<?xml version="1.0"?>
<!-- This is a sample XML document -->
<!DOCTYPE Items [<!ENTITY number "123">]>
<Items>
<Item>Test with an entity: &number;</Item>
<Item>test with a child element <more/> stuff</Item>
<Item>test with a CDATA section <![CDATA[<456>]]> def</Item>
<Item>Test with a char entity: A</Item>
<!-- Fourteen chars in this element.-->
<Item>1234567890ABCD</Item>
</Items>
Комментарии
Note
Чтобы воспользоваться преимуществами новых функций, рекомендуется создавать XmlReader экземпляры с помощью XmlReaderSettings класса и Create метода. Дополнительные сведения см. в разделе "Примечания" на справочной XmlReader странице.