過去ログ
No.1042 16進2バイト→UTF-8の漢字の変換方法
[戻る]
[ホームページ]
No.13408
16進2バイト→UTF-8の漢字の変換方法
投稿者---ひろ☆彡(2004/03/28 04:53:45)
お世話になります。
どうしてもわからなくて、書込みさせて頂きます。
環境:Windows2000, VC++(基本で作成しているのはC言語)
あるバイナリファイルから読み込んだデータ(16進)の2バイトを、UTF-8の日本語に書換したいのです。
(例)16進2バイト"938c"→"東"(UTF-8)に変換
この変換後の文字を返値する関数を作りたいのですが、作り方すら全くわかりません。
どうか教えていただけませんでしょうか。
宜しくお願い致します。
No.13409
Re:16進2バイト→UTF-8の漢字の変換方法
投稿者---
YuO
(2004/03/28 05:43:53)
>環境:Windows2000, VC++(基本で作成しているのはC言語)
>あるバイナリファイルから読み込んだデータ(16進)の2バイトを、UTF-8の日本語に書換したいのです。
>(例)16進2バイト"938c"→"東"(UTF-8)に変換
データというのはShift_JISの2バイトでよいのですか?
そうであれば,
MultiByteToWideChar
でUCS-2に変換後,
WideCharToMultiByte
でUTF-8に変換
International Components for Unicode
で変換する
Unicode Home Page
にある
Unihan Database
を元に自分で変換表を作成する
上の変種で,
Unicode Character Database
にある
Obsoleteされた変換データ
を元に自分で変換表を作成する
あたりでしょうか。
#Unicodeの値からUTF-8への変換は
RFC 3629
を参考のこと。
No.13410
Re:16進2バイト→UTF-8の漢字の変換方法
投稿者---ひろ☆彡(2004/03/28 10:44:24)
>データというのはShift_JISの2バイトでよいのですか?
はい、そうです。
>そうであれば...
やってみます。ありがとうございます。
後程ご報告させて頂きたいと思います。
あー、掲示板に載せてよかったー(>_<)
ずっと一人で悩んでて、どうすることもできなかったんですー(T_T)