libxmlをunicode xmlcharで使用することは可能ですか?
質問
libxmlをUnicodeで使用することは可能ですか?
たとえば、xmlParseDoc関数はxmlCharを受け取ります
xmlCharには次の定義があります:
typedef unsigned char xmlChar;
libxmlですべてを2バイト文字として解釈したいのですが。
次のライブラリでは適切に動作しないと感じています:
typedef unsigned short xmlChar;
注:xmlエンコードを実際に読み書きする時期については話していない。私はそれがユニコードをサポートしていることを知っています。私が望むのは、通常の文字列ではなく、Unicode文字列wstringを使用するlibへのインターフェイスです。
解決
@Mitch Wheatが提供するリンクで答えを見つけました
xmlcharをunsigned shortに再定義することはできません。ただし、文字列をUTF-8としてエンコードする場合、xmlCharはUnicodeを適切に処理します。
CP_UTF8のパラメーターを指定してWideCharToMultiByteを呼び出すことにより、Windowsの文字列をUTF8に変換できます
所属していません StackOverflow