問題タブ [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.
c++ - Xercesc XPath 機能
xercesc 3.1.1 で DOMDocument::evaluate が DOM ツリーからノードを選択するのに疲れました。一部の xpath 式で機能します。ただし、"//Project[@index=\"1\"]" のような属性値によるノードの選択はサポートされていません。誰でもこれを確認できますか?
ありがとう!
c++ - XSD cxxツリーオブジェクトからXMLファイルを作成するにはどうすればよいですか?
XSDを使用してC++でXMLベースの形式からオブジェクトを作成するライブラリを使用しています。
基本的に、継承図は次のようになります。
MainXmlObject
をに変換してから、実際のXMLファイルを作成するためにxerces::DOMDocument
使用する必要があると思いますが、これまでのところ、適切なルーチンを見つけることができませんでした。DOMWriter
これを行うための最良の方法は何ですか?
c++ - XercesDOMParser での解析中に予期しない例外が発生しました
Windows 7 Professional SP1 で MS Developer Studio 10.0.4 を使用して、xerces-c-3.1.1-x86-windows-vc-10.0 を使用して C++ でコードを開発しています。ここからの次のコードを使用して、XML ファイルを開いたり閉じたりします。
入力 XML ファイルの命名シーケンスrootname-00000.xml
は、 などです。どの時点rootname-00001.xml
に到達するまで、すべて正常に動作します。rootname-03799.xml
parser->parse(xmlsFileName.c_str()); で失敗します。
名前を変更しrootname-00000.xml
ても問題ないので、ファイルの形式に問題はないようです。また、パーサーとエラー ハンドラーを毎回削除するので、不足することはないようです。
この問題に関するご支援をいただければ幸いです
c++ - C++Xerces-c-ノードがプレースホルダーであるかどうかを確認する方法
私はC++とXerces-cを使用してXMLパーサーに取り組んできましたが、理解できない問題が発生したようです(大きな問題ではありません。回避策はありますが、「ハックしたくない」 「それを回避する私の方法:))
私はこのようなXMLファイルを持っています
私がやろうとしているのは、ノードが他の子ノード<Person>
(ノードやノードなど)の単なる「プレースホルダー」である<Job>
かどうかを判断し、処理を試みるのではなく、子ノードをチェックすることです。
この理由は、ノード名(Titleなど)と値(NewJobなど)、および子エントリのリストを格納するクラス内にノード値を格納しているため、Jobはノードエントリ、次にTitle、役職と給与はすべて、ジョブの「子」エントリになります。ただし、JobにPositionのエントリがすでにあるかどうかも確認できるようにしたいので、新しいエントリを作成してJobも追加するのではなく、Positionの値を既存のPositionエントリに追加するだけです...誰にでも意味がある:)
どんな助けでも大歓迎です、私は誰かがそれをコーディングすることを期待していません、または私のためにいくつかのヒントやポインタだけです:)!
c++ - XercesC++の未解決のリンカーエラー
VS2005を使用して、作成したスキーマのXerces .hxx/.cxxファイルを生成およびビルドしています。スキーマを生成してコンパイルすることはできますが、リンクすると、以下のリンカーエラーが発生しました。xerces-c_3D.libを[リンカー]->[入力]->[追加の依存関係]タブに含めました。そしてそれはそれを見つけるようです。Linker-> General-> Additional Library Directories VSから場所を取得すると、xerces-c_3D.libが見つからないと文句を言うからです。
http://wiki.codesynthesis.com/Using_XSD_with_Microsoft_Visual_Studioを使用してプロジェクトをセットアップしました。
また、サンプルアプリケーションの1つをビルドしてみましたが、インクルードとライブラリをセットアップした後、必ずビルドします。私も2010年と同じことを構築して実行しましたが、それは機能します。だから私はどこを見ればいいのか途方に暮れています。
任意の提案をいただければ幸いです。
c++ - コアダンプから xerces-c DOMDocument をトラバースするにはどうすればよいですか?
元の質問でのセグメンテーション違反とサードパーティ ライブラリのビジネス全体が気を散らしているだけなので、編集した質問を投稿しています。
私が持っているのは、xerces-c と segfaults (プロセスでコア ダンプを作成する) を使用するプログラムです。私がやりたいことは、gdb を起動し、作成された DOMDocument をコア ダンプからトラバースすることです。
たとえば、特定の DOMElement またはその子ノードなどの属性を取得したいとします。DOMElements の内部構造などについて説明している、これについて読むことができる記事はありますか? または、ソース tarball で DOMElement のソース コードを見つけることができなかったので、xerces-c ソース コードに関するいくつかのリソースを教えてください。(それ以来、ソースコードを持っていると役立つかもしれません。DOMElement がどのように実装されているかを正確に知っているため、それをたどることができます)。
私が言ったように、私は xerces-c コードベースにあまり詳しくなく、apache のドキュメントは明らかにひどいものです。
元の質問:-
私はサードパーティのライブラリを使用しています。これは、segfaulting のどこかで xml を解析するために xercesc を使用しています。コアダンプから xerces-c 要素を検査するにはどうすればよいですか?
ライブラリのソース コードにアクセスできますが、関数の引数として DOMElement 参照を使用する関数でセグメンテーション違反が発生しています。何かのようなもの
コアダンプからこの DOMElement を検査したい (名前、タグ、子要素などを出力するように、基本的にこの DOMElement の下の DOMDocument をトラバースします) が、xerces-c コードベースに精通していません。
どうすればこれを行うことができますか?
追加情報:- gdb を使用しています。
c++ - C ++ xercesオブジェクトのシリアル化により、アクセス違反が発生します。
Xerces C ++を使用して、以下のスキーマから典型的なC++コードを生成しました。オブジェクトをシリアル化すると、アクセス違反が発生します。std :: basic_stringのテンプレート化された挿入コードが発生するまで、スタックのコードをステップダウンしました。
生成されたコードのどこで問題が発生するかを調べることができます。しかし、それはやり過ぎのようです。これは私のコードの問題だと確信しています。
私のコードは以下の通りです。
以下は、コードの生成に使用しているスキーマです。
c++ - シリアル化されたばかりのオブジェクトからオブジェクトを作成する際のxercescの問題
オブジェクトを文字列にシリアル化してから、同じ文字列から再度作成するという問題があります。文字列から同じオブジェクトを作成して値を確認しようとすると、関数が正しく返されません。XMLオブジェクト全体を文字列として返します。
結果のxmlを確認しましたが、正しく見えます。だから私は何をすべきか途方に暮れています。
この問題についての洞察に感謝します。
例を以下に示します。
xml-parsing - Visual Studio 2010でXalan-Cをどのように構築しますか?
それが可能であるという証拠を見つけることができません。40時間狂気に駆られた後、名前の悪いAllInOneプロジェクト(Xalan-C.lib、natchをビルドする)に必要なヘッダーファイルをビルドするローカリゼーションプロジェクトをビルドできない状況が残りました。
このライブラリはソフトウェアの不正行為であり、大規模です。別のライブラリに依存しているため、他に使用する方法がないため、答えを求めています。
c++ - サンプルocdeをコンパイルするときのxercesc_2_8への未定義の参照
XERCESサイトで入手できる次のサンプルコードをコンパイルしようとしています。
と、
次のリンクエラーが発生します。
私はubuntu-server12.04にaptitudeを介してxerces-c28とxerces-c2-devをインストールしました
どんな助けでもいただければ幸いです。