現在のノードのテキスト値を取得します。
Public MustOverride ReadOnly Property Value As String
[C#]
public abstract string Value {get;}
[C++]
public: __property virtual String* get_Value() = 0;
[JScript]
public abstract function get Value() : String;
プロパティ値
返される値は、ノードの NodeType によって異なります。ノードが値を持たない場合は、String.Empty などの空の要素が返されます。各ノード型の戻り値を次の表に定義します。
ノード型 | 値 |
---|---|
属性 | 属性の値。 |
要素 | 要素の InnerText 。 |
Comment | コメントの内容。 |
ProcessingInstruction | ターゲットを含まない全体の内容。 |
Text | テキスト ノードの内容。 |
Whitespace | マークアップ間の空白。 |
SignificantWhitespace | 混合コンテンツ モデルのマークアップ間にある空白、または xml:space= 'preserve' スコープ内の空白。 |
Root | ルート ノードの InnerText 。 |
使用例
[Visual Basic, C#, C++] ノード ツリーを再帰的にウォークし、要素ノードおよびテキスト ノードについての情報を表示する例を次に示します。
public shared sub RecursiveWalk(nav as XPathNavigator)
select case nav.NodeType
case XPathNodeType.Element
if (nav.Prefix=String.Empty)
Console.WriteLine("<{0}>", nav.LocalName)
else
Console.Write("<{0}:{1}>", nav.Prefix, nav.LocalName)
Console.WriteLine(" "+ nav.NamespaceURI)
end if
case XPathNodeType.Text
Console.WriteLine(" " + nav.Value)
end select
if ( nav.MoveToFirstChild() )
do
RecursiveWalk(nav)
loop while ( nav.MoveToNext() )
nav.MoveToParent()
if (nav.NodeType = XPathNodeType.Element)
Console.WriteLine("</{0}>", nav.Name)
end if
end if
end sub
[C#]
public static void RecursiveWalk(XPathNavigator nav)
{
switch (nav.NodeType){
case XPathNodeType.Element:
if (nav.Prefix==String.Empty)
Console.WriteLine("<{0}>", nav.LocalName);
else
Console.Write("<{0}:{1}>", nav.Prefix, nav.LocalName);
Console.WriteLine("\t"+ nav.NamespaceURI);
break;
case XPathNodeType.Text:
Console.WriteLine("\t" + nav.Value);
break;
}
if ( nav.MoveToFirstChild() )
{
do{
RecursiveWalk(nav);
} while ( nav.MoveToNext() );
nav.MoveToParent();
if (nav.NodeType == XPathNodeType.Element)
Console.WriteLine("</{0}>", nav.Name);
}
}
[C++]
static void RecursiveWalk(XPathNavigator * nav)
{
switch (nav -> NodeType)
{
case XPathNodeType::Element:
if (nav -> Prefix == String::Empty)
Console::WriteLine(S"< {0}>", nav -> LocalName);
else
Console::Write(S"< {0}: {1}>", nav -> Prefix, nav -> LocalName);
Console::WriteLine(S"\t {0}", nav -> NamespaceURI);
break;
case XPathNodeType::Text:
Console::WriteLine(S"\t {0}", nav -> Value);
break;
}
if (nav -> MoveToFirstChild())
{
do
{
RecursiveWalk(nav);
} while (nav -> MoveToNext());
nav -> MoveToParent();
if (nav -> NodeType == XPathNodeType::Element)
Console::WriteLine(S"</ {0}>", nav -> Name);
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
XPathNavigator クラス | XPathNavigator メンバ | System.Xml.XPath 名前空間