XmlNodeReader.HasValue 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得值,表示目前節點是否具有 Value。
public:
virtual property bool HasValue { bool get(); };
public override bool HasValue { get; }
member this.HasValue : bool
Public Overrides ReadOnly Property HasValue As Boolean
屬性值
如果讀取器目前所在節點具有 Value
,則為 true
,否則為 false
。
範例
下列範例會顯示每個可具有值之節點的值。
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlNodeReader^ reader = nullptr;
try
{
// Create and load an XmlDocument.
XmlDocument^ doc = gcnew XmlDocument;
doc->LoadXml( "<?xml version='1.0' ?>"
"<!DOCTYPE book [<!ENTITY h 'hardcover'>]>"
"<book>"
"<title>Pride And Prejudice</title>"
"<misc>&h;</misc>"
"</book>" );
reader = gcnew XmlNodeReader( doc );
// Parse the file and display each node.
while ( reader->Read() )
{
if ( reader->HasValue )
Console::WriteLine( "({0}) {1}={2}", reader->NodeType, reader->Name, reader->Value );
else
Console::WriteLine( "({0}) {1}", reader->NodeType, reader->Name );
}
}
finally
{
if ( reader != nullptr )
reader->Close();
}
}
using System;
using System.IO;
using System.Xml;
public class Sample {
public static void Main() {
XmlNodeReader reader = null;
try {
// Create and load an XmlDocument.
XmlDocument doc = new XmlDocument();
doc.LoadXml("<?xml version='1.0' ?>" +
"<!DOCTYPE book [<!ENTITY h 'hardcover'>]>" +
"<book>" +
"<title>Pride And Prejudice</title>" +
"<misc>&h;</misc>" +
"</book>");
reader = new XmlNodeReader(doc);
// Parse the file and display each node.
while (reader.Read()) {
if (reader.HasValue)
Console.WriteLine("({0}) {1}={2}", reader.NodeType, reader.Name, reader.Value);
else
Console.WriteLine("({0}) {1}", reader.NodeType, reader.Name);
}
}
finally {
if (reader!=null)
reader.Close();
}
}
} // End class
Option Explicit
Option Strict
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim reader As XmlNodeReader = Nothing
Try
'Create and load an XmlDocument.
Dim doc As New XmlDocument()
doc.LoadXml("<?xml version='1.0' ?>" & _
"<!DOCTYPE book [<!ENTITY h 'hardcover'>]>" & _
"<book>" & _
"<title>Pride And Prejudice</title>" & _
"<misc>&h;</misc>" & _
"</book>")
reader = New XmlNodeReader(doc)
'Parse the file and display each node.
While reader.Read()
If reader.HasValue Then
Console.WriteLine("({0}) {1}={2}", reader.NodeType, reader.Name, reader.Value)
Else
Console.WriteLine("({0}) {1}", reader.NodeType, reader.Name)
End If
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
備註
注意
在 .NET Framework 2.0 中,建議的做法是使用 XmlReaderSettings 類別和 Create 方法建立 XmlReader 實例。 這可讓您充分利用.NET Framework中引進的所有新功能。 如需詳細資訊,請參閱參考頁面中的 XmlReader 一節。
下表列出具有傳回值的節點類型。
節點類型 | 值 |
---|---|
Attribute |
屬性的值。 |
CDATA |
CDATA 區段的內容。 |
Comment |
註解的內容。 |
DocumentType |
內部子集。 |
ProcessingInstruction |
全部內容 (目標除外)。 |
SignificantWhitespace |
在混合內容模型中標記間的泛空白字元。 |
Text |
文字節點的內容。 |
Whitespace |
標記之間的泛空白字元。 |
XmlDeclaration |
宣告的內容。 |