質問

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に変換できます

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top