問題タブ [xerces-c]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
15424 参照

c++ - Xerces にファイルではなく文字列を解析させる

XercesDOMParser を使用するだけで、xml ファイルから完全な dom を作成する方法を知っています。

それはうまくいきます...しかし、文字列を解析したい場合はどうすればよいでしょうか? 何かのようなもの

私はバージョン 3 を使用しています。内部AbstractDOMParserを見ると、その parse メソッドとそのオーバーロードされたバージョン、解析ファイルのみが表示されます。

文字列からどのように解析できますか?

0 投票する
1 に答える
3138 参照

c++ - Xerces-C DOMDocument から別の Xerces-C DOMDocument への Xerces-C DOMElement のアタッチ

以前、RapidXml での同様の問題について質問しましたが、今は同じですが、Xerces-C を使用していることを知りたいです。

私は、xml を解析する必要がある C++ アプリケーションに取り組んでいます。

次の点を考慮してください。

xml ファイル: file1.xml

xml ファイル: file2.xml

私のcppファイル

私はこれをしたいと思います:

したがって、ドキュメント doc2 の最終的な xml は

しかし、そうすると次のようになります。

「xercesc_3_1::DOMException」のインスタンスをスローした後に呼び出された終了が中止されました

アタッチしたい要素が別のツリーに属しているためだと思います。どうすればこの結果を達成できますか? 問題は、基本的に、xml セグメントを含むツリーと文字列があることです。その xml を表す DOM オブジェクトを取得し、他のツリーのノードにアタッチする必要があります。最も重要なことは、内部に xml を含む文字列があることです... この重要な要件を回避することはできません。ひもから、ドムをとって取り付けます。それは不可能のようです...可能ですか?

これどうやってするの???Xerces-C プログラマーがそのようなシナリオをまったく考えておらず、そのようなソリューションを実現するための適切な機能を提供していなかったという事実を、私は本当に受け入れることができません。

ノードまたは要素のノード所有権を変更する方法があるかどうかを教えてもらえたとしても、それで十分かもしれません。ほら、以前に試したことが実行されたときに発生する WRONG_DOCUMENT_ERR があります。ライブラリがノードの所有権を別のドキュメントに属するように変更する方法を提供した場合、私は大丈夫で、私の問題は解決されるでしょう!

ありがとうございました

0 投票する
2 に答える
450 参照

c++ - QString を Xerces 文字列に変換する

QStringXMLCh const *Xerces-C++ で使用できるように変換したいと考えています。

前者はconst ushort *、(私が思うに) O(1) 時間で、ホストのバイト順で NUL 終端に「変換」できます。後者も UTF-16 文字列ですが、どのバイト順かはわかりません。

以前にこの問題に取り組んだ人はいますか? 文字列のコピーをたくさんするのは気が進まない。

0 投票する
1 に答える
5024 参照

c++ - Xerces-C で DOMNode* から DOMElement* に渡す

xml を操作する C++ アプリケーションがあります。アプリケーションのある時点で DOMNode* を取得し、それを子として要素にアタッチします。

問題は、そのノードにパラメーターを追加したいということです...まあ、それはノードなので要素ではありません...要素だけがパラメーターを持っています...

これは私のコードです:

ご覧のとおり、文字列からノードを作成したいので、解析によってノードを作成し、そのノードをインポートして、新しいノードを接続する dom ツリーに属する新しい同一のノードを作成する必要があります。私の手順は次のとおりです。

  • 既存の dom にアタッチする xml 文字列を取得します (どこかに domdocument として保存されます)。

  • パーサーを作成する

  • パーサーを使用して、文字列から dom ツリーを作成します

  • 既存の dom (新しいノードをアタッチする場所) から、インポートを呼び出してノードを複製し、既存の dom にアタッチできるようにします。

  • 取り付けます

問題は、インポートとインポートがノードを取得することです...要素をアタッチしたい...

私はappendChildを使用して要素を追加します...もちろん、メソッドはDOMNode *を必要としますが、それにDOMElement *(DOMNodeから継承)を与えることは問題ありません...

ノードから要素を取得するにはどうすればよいですか??? wd_parser を削除します。

0 投票する
2 に答える
612 参照

c++ - Xerces-C を使用して xml にスタイルシート宣言を追加する

Xerces-C をメインの xml 操作ライブラリとして使用する c++ のアプリケーションがあります。

DOMDocument* とパーサーがあり、宣言を設定したいと考えています。

私は次のことを行います:

追加したい:

どうすればいいですか?

0 投票する
3 に答える
915 参照

solaris - Solaris sparc での静的リンクの問題

未定義のシンボル 他のプラットフォーム (Linux、HP-UX、Solaris-x86) での静的リンクが機能しているのに対し、solaris sparc でのみ xerces をアプリケーションと静的にリンクしているときにエラーが発生します。

ここにエラーがあります。

0 投票する
2 に答える
77994 参照

c++ - C++ での XML ファイルの読み書き

C++ で単純な .xml ファイルを読み書き (更新) する方法について多くのことを調査しましたが、そのコードを開発することはできません。

DOMまたはSAX2パーサーを使用して読み取るために必要と思われるxerces-cライブラリをインストールしました。

誰かがそのコードを書くのを手伝ってください。

これを行うためのサンプル コードは非常に役立ちます。

よろしくお願いいたします。 Adarsh Sharma

0 投票する
1 に答える
1190 参照

c++ - C++ sax2 パーサーの問題

XML ファイルを解析したい。私のXMLは次のようになります。

このファイルの解析には sxx 2 パーサーを使用します。element<value>の値をlocalhost から 192.168.0.5にチェーンしたいと考えています。次のような C++ コードを書きました。

コードがコンパイルされます。私が知りたいのは、XML ファイルの値を変更する方法です。このハンドラーを作成してコードで使用するにはどうすればよいですか? XML ファイルの値を正常に変更するために何をする必要があるかを誰か説明できますか?

0 投票する
2 に答える
2330 参照

c++ - DOMDocument C++ メモリ管理

C++ の DOM* クラスの createXXX メソッドに関する質問です。DOM* createXXX メソッドから返されたメモリーを解放するために何か特別なことをする必要がありますか?

例(トランスコードは単純化のために削除され、トランスコード操作に関連する変数の関連リリース、私はそれらについて知っています):

最終的にメソッドを離れるとき、createXXX メソッドからメモリを解放するために、firstElement、secondElement、name に対して何か特別なことをする必要がありますか? それとも、pdoc がすべてのメモリを所有していて、DOMDocument を破棄するのを待たなければならないのでしょうか?

議論に追加する場合は、名前/値のロジックをループして、複数の属性を secondElement に追加します。

ありがとう。

0 投票する
1 に答える
772 参照

c++ - Xerces-cアサーションエラー

LinuxにXerces-cをダウンロードしてビルドしました。

簡単なプログラムを作成しました:

それをコンパイルしました:

コンパイルが成功し、それを実行すると、これが私が得るものです:

誰もが同様の経験を持っている/このライブラリの構築と使用に成功しています...どうやって?それは本当に苦痛になりつつあり、名前空間をサポートする複数のスキーマに対してXMLドキュメントを適切に検証するのはLinuxにとって明らかに唯一のものです(またはそれは??)