Microsoft XML Core Services 6.0 (MSXML) を使用して XML ファイルを読み書きしています。xml のコンテキストでエスケープする必要がある「特別な」文字を含む要素コンテンツを記述する場合、MSXML がこの変換を行うため、 「 &
」を記述する必要はありません。&
これは、要素にテキストを割り当てると、たとえば、 XML ファイルを作成するときoXMLElement.Text = "1 & 2"
に MSXML が実際に書き込む
ことを意味します。oXMLElement.Text = 1 & 2
それはかなりいいことで、私の仕事を節約します。
今、私がやりたいことは、XML文字列を自動的に「マスク解除」することです。だから、私はselectNodes
、XPath ステートメントを追加することによって動作する -method を使用して XML ファイルから読み取ります//ns:element/text()
。残念ながら、取得した結果文字列は のように見えますが、そうでは1 & 2
ありません1 & 2
。MSXMLオブジェクトまたはXPathステートメントに「マスク解除」文字列を与えるように指示する方法はありますか? ObjectPal / Paradox で MSXML を使用しているため、MSXML ライブラリのメソッドまたは「特別な」XPath ステートメントを使用するのが最善の解決策です。