XMLCh*
とchar*
の違いはわからないので、私はXMLString::transcode(XMLCh*)
とXMLString::transcode(char*)
の目的を理解していないようです。 誰かが私のために物事をもっときれいにしてくれますか?目的XMLString :: transcodeの目的
10
A
答えて
19
Xercesは、情報をUTF-16として内部的に符号化します。 UTF-16データは、XMLCh
データ型を使用して格納されます。
'Cスタイル'の文字列はローカルコードページ(おそらくUTF-8ですが、プラットフォームと設定によって異なります)にあるchar
を使用します。transcode
を使用して2つの間の変換を行います。
たとえば、Xercesのデータを別のライブラリにフィードし、そのライブラリがローカルコードページ内のテキストを必要とする場合は、transcode
にする必要があります。また、char
データがあり、Xercesにフィードしたい場合は、transcode
それをXMLCh
にする必要があります。これは、Xercesが理解しているものですからです。例えば
:
// to local code page
DOMNode *node = ...;
char* temp = XMLString::transcode(node->getNodeValue());
std::string value(temp);
XMLString::release(&temp);
// from local code page
DOMElement *element = ...;
XMLCh *tag = XMLString::transcode("test");
DOMNodeList *list = element->getElementsByTagName(tag);
XMLString::release(&tag);
は、文字列を解放することを忘れないでください!ラウンドラッパーを書く方が良いですが、examplesがインターネット上にあります(XercesString
という名前のクラスを検索するだけです)。
あなたは私はあなたが本当に便利だったThe Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
関連する問題
- 1. 目的
- 2. 目的
- 3. 目的
- 4. RemoveAll()の目的
- 5. 目的のC
- 6. シングルアサインメントの目的
- 7. スケルトンディレクトリの目的
- 8. DynaValidatorFormの目的
- 9. OptionArgの目的
- 10. オシロスコープの目的
- 11. 目的C:ドロップエリア
- 12. 多目的パーサー
- 13. 目的C tip?
- 14. 目的C、メモリリーク?
- 15. 目的C IBOutlets
- 16. キーボードイベント目的C
- 17. 目的c:EXC_BAD_ADDRESS
- 18. 目的Cソケットプログラミング
- 19. スレッド再目的
- 20. 目的C init
- 21. 目的C:スコアカウンター
- 22. 目的C:UILongPressGestureRecognizerエラー
- 23. Redisの「evicted_keys」目的
- 24. 目的コードのEXC_BAD_ACCESS
- 25. /var/resource_config.jsonの目的
- 26. webAppRootKeyの目的は?
- 27. セグメントコントロール+目的のナビゲーションバー
- 28. Springフォームコマンドの目的
- 29. プログラミング目的のクリップボードビューア
- 30. IDictionaryインターフェイスの目的
感謝を読むべきだと思うのエンコーディングについての詳細をお知りになりたい場合は! – Glolita
例のように数行のコードを追加すると、私のような他の読者には大いに役立ちます! – Jaywalker