問題タブ [mini-xml]

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 に答える
4215 参照

c - MiniXMLを使用してCでXMLファイルを解析する

MiniXMLライブラリを使用してCでXMLファイルを解析していますが、ノードの値を読み取ろうとするとNULLが返されます。

コードは次のとおりです。

問題は、node->value.text.stringがNULLであるということです。私はドキュメントを読んでいますが、何が間違っているのかわかりません。誰かが以前にこの問題に遭遇したことがありますか?

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

c++ - C ++:XMLファイル(MXMLライブラリ)の解析に関する問題

次のコードに問題があります。

Mini-XMLライブラリを使用して、xmlファイルから要素を抽出します。

最後の「radiuselement」を取得できず、代わりにNULLを返すことを除いて、コンパイルして正常に実行されます(サブノードがNULLでないかどうかを確認しないとクラッシュします)。

}

問題のXMLファイルの一部を次に示します。

このコードの何が問題になっていますか?

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

c++ - C++: Mini-XML を使用して XML ファイルから長い文字列を読み込む際の問題

Mini-XML ライブラリを使用して XML ファイルを解析しています。

ほぼすべての要素と属性をロードできますが、長い文字列をロードするのに問題があります。

コードの関連部分は次のとおりです。

解析する必要がある 1 つの要素を次に示します。

説明タグから最初の単語しか取得していません。

なんで?

編集 1: std::string に切り替えようとしましたが、MiniXML ライブラリは const char* を返していますが、これは明らかにそのような長い文字列を保持できません。

助言がありますか?

編集 2: 空白を無視するようにコールバックを OPAQUE に変更しましたが、NULL を返すだけになりました。

編集 3: value.text.string の代わりに value.opaque を取得するようにメソッドを変更しました。これにより、「description」タグはうまく機能しますが、「bar」タグを const char* にロードしようとするとクラッシュします。xml ファイルから引用符などを削除して、それが原因であるかどうかを確認しようとしましたが、役に立ちませんでした。

編集 4:「資産」オブジェクトを 1 つを除いてすべて削除し、次にその「バー」要素を削除しましたが、それでもクラッシュします。これは絶対に奇妙です!

編集 5: さて、私は問題のコードを分離しました:

ただし、これをメソッドに統合しました。これは、記述要素 (その直前) に使用しているのと同じメソッドであり、正常に機能します。なにが問題ですか?

編集 6: 奇妙なことに、検索文字列を "bar" に変更すると、正常に失敗します (つまり、NULL が返されます)。クラッシュするのは、「バー」(必要な要素)に変更したときだけです。これは予約済みのキーワードですか、それともミニ xml が気に入らないものですか?!

編集 7: 最後に! 理解した。MXML_DESCEND を MXML_DESCEND_FIRST に変更したところ、問題なく動作しました。わあ!なんという安堵。みんなありがとう!

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

c - MiniXML: C での xml の解析

Minixml を使用して C で xml ファイルを解析しています。この小さな例から「check-time」、「check-key」などの値を取得したい。ファイル:

これが私のコードです。タグを使用してデータを抽出する方法がわかりません。助けてください。subnode->next が次のインスタンス値を表示しないのはなぜですか?

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

c - `mxmlNewXML'へのminixml未定義の参照

minixmlライブラリをプロジェクトに取り込むのに問題があります。

こちらのminixmlページのドキュメントに従いましたhttp://www.minixml.org/documentation.php/install.html

インストール中にエラーは発生しませんでした。/usr/local/include/mxml.hに.hファイルがあり、/ usr / local / lib/libmxml.aにアセンブリファイルがあります。

mxml.hをインクルードしまし#define<mxml.h>たが、そのファイルに問題はありません(mxml_node_tなどのミニxmlタイプからのエラーがないため...

また、ライブラリをリンクするために-lmxmlコンパイルフラグを使用してコンパイルしています。

プロトタイプに一致する関数を呼び出す方法は次のとおりです。

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

c - miniXML パース C API

次の XML ファイルを解析しようとしています。

私は次のCコードを使用しています:

ルートの子にアクセスするにはどうすればよいですか? 私のアクセスの概念はどこが間違っていますか?

ありがとうございました。


@RutgersMikeの応答後に編集

while ループを拡張して、minixml の概念を理解しようとします。

その結果、次のようになりました。

この子と親の間のナビゲーションの概念は少し奇妙だと思います。兄弟間に(null)値があるのはなぜですか?

私はezxmlに戻ることを検討しています。

ありがとうございました

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

c - mxmlDelete()の使い方

私はmxmlライブラリを使用して、C 言語で XML ファイルを解析しています。次のコードを使用して、XML をバッファーにロードします。

XML ファイルは複雑ですが、現時点では関係ありません。

私の質問は、mxml ライブラリ関数で使用されているメモリをいつ解放する必要があるかということです。

このようなコードを一度だけ使用するだけで十分ですか:

XML.(mxmlDelete(node1);mxmlDelete(node2);または、到達するまで、すべてのノードに対してそれを繰り返す必要がありmxmlDelete(tree);ますか?

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

c++ - minixmlデータの表示をより読みやすくする方法は?

Cプログラムでminixmlを使って遊んでいます。そして、minixmlツリーをmxmlSaveFile(bkp_tree, fp, MXML_NO_CALLBACK);関数を使用してファイルに保存すると、xmlデータ全体が1つのブロックにまとめられます。ファイル内のxml構造を表示するための編成はありません(改行、インデント...)。

xmlデータはこの方法で保存されます

次の方法でXMLデータを保存するminixmlを作成するにはどうすればよいですか?

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

c - スペースでxml値を読み取る方法

次のような xml ドキュメントを作成します。

このドキュメントを minixml ライブラリで解析しようとしました:

ファイルを解析すると、次の結果が見つかりました。

私の問題を解決する方法はありますか?