問題タブ [rapidxml]

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 投票する
1 に答える
340 参照

c++ - RapidXML は xml:space="preserve" をサポートしていますか?

「空白のみのテキストノード」を持つ XML ファイルを読んでいます。

上記の (簡略化された) 例では、終了タグと開始タグの間に空白 (1 つのスペース) があります。そのスペースを確保する必要があります。

RapidXML で解析する場合、「parse_comment_nodes」のみを指定しているため、「parse_trim_whitespace」と「parse_normalize_whitespace」は有効ではないと想定しています。だから私は "xml:space" 構文を使用しようとしています:

...しかし、RapidXML はそれを尊重していないようです。すべての兄弟ノードをループすると、値が " " のノードが表示されません。

私はドキュメントを読んで (そして読み直して)、StackOverflow でここを検索してきましたが、これが私の側の構文の問題なのか、それとも RapidXML の問題なのか、今のところわかりません。

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

c++ - std::vector のコンストラクタで std::string データ型を使用する

これは、std::vector のコンストラクターの使用に関する質問であるため、RapidXML 規則に関する特定の質問ではありません。

RapidXML を使用して私が見つけた他のすべての例では、誰もが次のように 's コンストラクターcharを使用して常にデータを 's のベクトルに読み込みます。std::vector

のベクトルに変更しようとするとstd::string、これが最初のエラーであるエラーでいっぱいの画面が表示されるため、これには理由があるに違いありません。

std::string を使用する方法はありますか?

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

c++ - Rapidxmlを使用してxmlからutf-8文字列を読み取る方法は?

私の質問はこの未回答の質問と同じですか?

Rapidxml で Unicode XML 値を読み取る方法

しかし、XML のコンテンツは UTF-8 でエンコードされています。私は MS Visual Studio、C++ の初心者です。

私の質問は、UTF-8 文字列を wchar_t タイプの文字列に読み込むにはどうすればよいですか?

たとえば、次のような構造を定義します。

そして、xmlから値を読み取るときに使用します..

しかし、格納されている utf-8 文字列は期待どおりではありません。それらは破損した文字です。

私の質問は次のとおりです。

  1. Rapidxml を使用して Unicode/Utf-8 値を読み取るにはどうすればよいですか?
  2. 同じことを行う単純な xml パーサーはありますか?
  3. サンプルコードは深く感謝します。

セクション2.1では、ここで言及されています

" RapidXml はデコードを実行しないことに注意してください - name() および value() 関数によって返される文字列には、ソース ファイルと同じエンコーディングを使用してエンコードされたテキストが含まれます。 "

XML のエンコーディングが UTF-8 の場合、 ->value() 関数の戻り値を取得する最良の方法は何ですか?

前もって感謝します。

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

c++ - RapidXML 使用時のセグメンテーション エラー

これを実行すると、読み込まれた XML と読み込まれたディメンションが出力され、次にセグメンテーション エラー (コア ダンプ) が出力されます。RapidXML のマニュアルで見た例をコピーしたところ、StackOverflow に同様の例がありました。私の実装の問題点は何ですか?

data.xml

map.h

map.cpp

main.cpp

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

c++ - RapidXML 解析が最初のノード C++ でスタックする

これを実行すると、 x: 400 Next: y が連続して出力されます。繰り返すと、なぜ次の兄弟に行かないのですか? RapidXMLマニュアルの例に従っているので、うまくいくはずです。

data.xml

map.h

map.cpp

main.cpp

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

c++ - スクリプトで呼び出されたときに RapidXML が解析されない

iNotify で監視されているフォルダーがあります。フォルダーにファイルが作成されると、ウォッチャーはファイルを取得し、名前を変更して (mv で)、別のフォルダーに移動します。次に、RapidXML プログラムが bash スクリプトで呼び出され、ファイルの XML コンテンツを解析すると想定されます。iNotify プログラムも、RapidXML プログラム スクリプトの呼び出し後に再起動されます。

そのため、RapidXML プログラムを単独で実行すると、ファイルが解析され、必要なすべての処理が行われます。しかし、ウォッチャーを実行し、XML ファイルがウォッチ ディレクトリに配置されると、検出され、名前が変更され、移動されますが、RapidXML プログラムがフリーズまたはキックアウトします (どちらか不明)。

ライン。

RapidXML プログラムのコードのセクションは次のとおりです。

スクリプトで呼び出されたときに XML ファイルを解析したくない理由を知っている人はいますか?