0

私のアプリケーションは、swf ファイルによって読み取られる XML ファイルにデータを書き込む必要があります。swf は、XML 内のデータが UTF-8 エンコーディングであることを想定しています。アプリの一部のマルチバイト文字 (簡体字中国語、日本語、韓国語など) を UTF-8 に変換する必要があります。これを可能にする API 呼び出しはありますか?サードパーティの DLL は使用したくありません。私は Windows と Mac の両方でそれを行う必要があり、利用可能な場合はシステム API を優先します。

ありがとうjbsp72

4

2 に答える 2

2

UTF-8はマルチバイトエンコーディングです(正確には、可変バイト長エンコーディングです)。マルチバイトエンコーディングから変換する必要があると述べるだけでは不十分です。ソースがどのマルチバイエンコーディングであるかを指定する必要がありますか?

于 2010-01-21T11:08:11.097 に答える
0

アプリの一部のマルチバイト文字 (簡体字中国語、日本語、韓国語など) を UTF-8 に変換する必要があります。

元の文字列がマルチバイト (中国語/アラビア語/タイ語など) であり、それを他のマルチバイト (UTF-8) に変換する必要がある場合、最初に WideCharacter (UTF-16) に変換してから元に戻す方法があります。マルチバイトに。

multibyte(chinese/arabic/thai/etc) -> widechar(UTF-16) -> multibyte(UTF-8)

元の文字列が既に Unicode(UTF-16) である場合は、上の図の最初の変換をスキップできます

コードページはMSDNから参照できます。

Google Chrome には、Windows、Linux、および Mac 用の文字列変換の実装がいくつかあります。ここまたはここで見ることができます。ファイルは src/base の下にあります:
+ sys_string_conversions.h
+ sys_string_conversions_linux.cc
+ sys_string_conversions_win.cc
+ sys_string_conversions_mac.mm

コードは BSD ライセンスを使用しているため、商用プロジェクトに使用できます。

于 2010-01-21T10:54:57.670 に答える