Freigeben über


XmlNodeReader.Value Eigenschaft

Definition

Ruft den Textwert des aktuellen Knotens ab.

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

Eigenschaftswert

String

Der zurückgegebene Wert hängt vom NodeType des Knotens ab. In der folgenden Tabelle sind Knotentypen aufgeführt, die einen zurückzugebenden Wert haben. Alle anderen Knotentypen geben String.Empty zurück.

Knotentyp Wert
Attribute Der Wert des Attributs.
CDATA Der Inhalt des CDATA-Abschnitts.
Comment Der Inhalt des Kommentars.
DocumentType Die interne Teilmenge.
ProcessingInstruction Der gesamte Inhalt mit Ausnahme des Ziels.
SignificantWhitespace Der Leerraum zwischen Markups bei einem Modell für gemischten Inhalt.
Text Der Inhalt des Textknotens.
Whitespace Der Leerraum zwischen Markups.
XmlDeclaration Der Inhalt der Deklaration.

Beispiele

Im folgenden Beispiel wird ein XML-Code gelesen und jeder Knoten angezeigt.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   String^ filename = "items.xml";
   XmlNodeReader^ reader = nullptr;
   try
   {
      
      //Create an XmlNodeReader to read the XmlDocument.
      XmlDocument^ doc = gcnew XmlDocument;
      doc->Load( filename );
      reader = gcnew 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 != nullptr )
            reader->Close();
   }

}
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

Das Beispiel verwendet die Datei, items.xmlals Eingabe.


<?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>

Hinweise

Hinweis

Im .NET Framework 2.0 empfiehlt es sich, Instanzen mithilfe der XmlReaderSettings Klasse und der Create Methode zu erstellenXmlReader. Dadurch können Sie alle neuen Features nutzen, die im .NET Framework eingeführt wurden. Weitere Informationen finden Sie im Abschnitt "Hinweise" auf der XmlReader Referenzseite.

Gilt für