RapidXMLの新機能です。 XML文書を作成してファイルに出力したい。すべてが機能しますが、私がプロセスの権利の一部をしているかどうかはわかりません:RapidXMLノードの属性として数値(double/float)を追加します。
ダブルであるノードに属性を追加する。
私は、STD C++のものを使用しています:
double value = 1.0;
std::ostringstream strs;
strs << value ;
std::string str = strs.str();
char* numBuff = doc.allocate_string(str.c_str());
xml_attribute<> *attr = doc.allocate_attribute("name",numBuff);
nodeRef->append_attribute(attr);
はよりelegnat /より高速な方法はありますか? (wishfull思考)のようなもの:
double value = 1.0;
char* numBuff = doc.allocate_string_from_value(value);
xml_attribute<> *attr = doc.allocate_attribute("name",numBuff);
私はパフォーマンスがここに私の主要な関心事であるように、私のxmlファイルにダブルスのトンを保存する必要があります。文字列に数値型の変換
挨拶、 オリバー
ファイルに書き込むだけの場合は、単にiostreamsを使用してDOMステップ全体の作成をスキップするのはなぜですか? – Nim
ええと、既に使用中のライブラリがたくさんあるので、私は(簡単な)xmlプリンタを自分自身で作成したくありませんでした。 RapidXMLが最も速いと思われる。バイナリ/ iniファイルの代わりにxmlを使用しているので、すべてが拡張可能であり、後で他のツールで使用できるようになります。 –