XPathNavigator.ReplaceRange メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > XPathNavigator.ReplaceRange メソッドの意味・解説 

XPathNavigator.ReplaceRange メソッド

メモ : このメソッドは、.NET Framework version 2.0 で新しく追加されたものです。

現在のノードから指定されたノードまでの範囲内にある兄弟ノードを置き換えます。

名前空間: System.Xml.XPath
アセンブリ: System.Xml (system.xml.dll 内)
構文構文

Public Overridable Function
 ReplaceRange ( _
    lastSiblingToReplace As XPathNavigator _
) As XmlWriter
Dim instance As XPathNavigator
Dim lastSiblingToReplace As XPathNavigator
Dim returnValue As XmlWriter

returnValue = instance.ReplaceRange(lastSiblingToReplace)
public virtual XmlWriter ReplaceRange (
    XPathNavigator lastSiblingToReplace
)
public:
virtual XmlWriter^ ReplaceRange (
    XPathNavigator^ lastSiblingToReplace
)
public XmlWriter ReplaceRange (
    XPathNavigator lastSiblingToReplace
)
public function ReplaceRange (
    lastSiblingToReplace : XPathNavigator
) : XmlWriter

パラメータ

lastSiblingToReplace

置き換える範囲内の最後の兄弟ノードに配置された XPathNavigator。

戻り値
置き換える範囲を指定するために使用する XmlWriter オブジェクト。

例外例外
例外の種類条件

ArgumentNullException

指定された XPathNavigator が null 参照 (Visual Basic では Nothing) です。

NotSupportedException

XPathNavigator は編集をサポートしていません。

InvalidOperationException

置き換え対象として指定された最後のノードは、現在のノードの有効な兄弟ノードではありません。

解説解説

ReplaceRange メソッドは、XPathNavigator が配置されている現在のノードから (このノードを含む)、XPathNavigator パラメータで指定されたノードまで (このノードを含む) の範囲内にある兄弟ノードを置き換えます。

メモメモ

置き換える範囲は、XmlWriter オブジェクトの Close メソッドが呼び出されるまで挿入されません。

使用例使用例

ReplaceRange メソッドを使用して、contosoBooks.xml ファイルの最初と 2 番目の book 要素を新しい空の book 要素に置き換える例を次に示します。

Dim document As XmlDocument = New
 XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

Dim manager As XmlNamespaceManager = New
 XmlNamespaceManager(document.NameTable)
manager.AddNamespace("bk", "http://www.contoso.com/books")

Dim first As XPathNavigator = navigator.SelectSingleNode("/bk:bookstore/bk:book[1]",
 manager)
Dim last As XPathNavigator = navigator.SelectSingleNode("/bk:bookstore/bk:book[2]",
 manager)

navigator.MoveTo(first)
Dim newRange As XmlWriter = navigator.ReplaceRange(last)
newRange.WriteStartElement("book")
newRange.WriteAttributeString("genre", "")
newRange.WriteAttributeString("publicationdate", "2005-04-07")
newRange.WriteAttributeString("ISBN", "0")
newRange.WriteStartElement("title")
newRange.WriteString("New Book")
newRange.WriteEndElement()
newRange.WriteStartElement("author")
newRange.WriteStartElement("first-name")
newRange.WriteString("First Name")
newRange.WriteEndElement()
newRange.WriteStartElement("last-name")
newRange.WriteString("Last Name")
newRange.WriteEndElement()
newRange.WriteEndElement()
newRange.WriteElementString("price", "$0.00")
newRange.WriteEndElement()
newRange.Close()
Console.WriteLine(navigator.OuterXml)
XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

XmlNamespaceManager manager = new XmlNamespaceManager(document.NameTable);
manager.AddNamespace("bk", "http://www.contoso.com/books");

XPathNavigator first = navigator.SelectSingleNode("/bk:bookstore/bk:book[1]",
 manager);
XPathNavigator last = navigator.SelectSingleNode("/bk:bookstore/bk:book[2]",
 manager);

navigator.MoveTo(first);
XmlWriter newRange = navigator.ReplaceRange(last);
newRange.WriteStartElement("book");
    newRange.WriteAttributeString("genre", "");
    newRange.WriteAttributeString("publicationdate", "2005-04-07");
    newRange.WriteAttributeString("ISBN", "0");
    newRange.WriteStartElement("title");
        newRange.WriteString("New Book");
    newRange.WriteEndElement();
    newRange.WriteStartElement("author");
        newRange.WriteStartElement("first-name");
            newRange.WriteString("First Name");
        newRange.WriteEndElement();
        newRange.WriteStartElement("last-name");
            newRange.WriteString("Last Name");
        newRange.WriteEndElement();
    newRange.WriteEndElement();
    newRange.WriteElementString("price", "$0.00");
newRange.WriteEndElement();
newRange.Close();
Console.WriteLine(navigator.OuterXml);

この例では、入力として、contosoBooks.xml というファイルを使用しています。

<bookstore xmlns="http://www.contoso.com/books">
    <book genre="autobiography"
 publicationdate="1981-03-22" ISBN="1-861003-11-0">
        <title>The
 Autobiography of Benjamin Franklin</title>
        <author>
            <first-name>Benjamin</first-name>
            <last-name>Franklin</last-name>
        </author>
        <price>8.99</price>
    </book>
    <book genre="novel" publicationdate="1967-11-17"
 ISBN="0-201-63361-2">
        <title>The
 Confidence Man</title>
        <author>
            <first-name>Herman</first-name>
            <last-name>Melville</last-name>
        </author>
        <price>11.99</price>
    </book>
    <book genre="philosophy"
 publicationdate="1991-02-15" ISBN="1-861001-57-6">
        <title>The
 Gorgias</title>
        <author>
            <name>Plato</name>
        </author>
        <price>9.99</price>
    </book>
</bookstore>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
XPathNavigator クラス
XPathNavigator メンバ
System.Xml.XPath 名前空間



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

XPathNavigator.ReplaceRange メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



XPathNavigator.ReplaceRange メソッドのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS