VC++を使っているのですが、以下の関数(クラス)を教えてください。

(1) UTF-8 をSHIFT-JISに変換するクラス
(2) SHIFT-JISをUTF-8に変換するクラス

よろしくお願いいたします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:jippu No.1

回答回数61ベストアンサー獲得回数4

ポイント25pt

ShiftJISとUTF-16BEの変換はVC++のライブラリ関数にあるのですが、UTF-8の変換はないようです。


なので、僕は上記のURLにある関数を使わせていただいています。

回答としては、

(1) CUnicodeF::utf8_to_sjis()

(2) CUnicodeF::sjis_to_utf8()

が利用できるかと思います。

id:goldman

おお、これはバッチリです。ありがとうございます。

2006/01/16 12:57:16
id:monyot No.2

回答回数146ベストアンサー獲得回数18

ポイント25pt

Windows の標準の関数を用いる場合、


UTF-8 → シフトJISは

MultiByteToWideChar () で CP-UTF8 から UCS-2(UTF-16) に変換後、WideCharToMultiByte () を用いて、コードページ 932 に変換。


シフトJIS → UTF-8 は逆の方向に、一度 UCS-2 を経由して変換する必要があります。

id:goldman

了解しました。おりがとうございます。

2006/01/16 12:57:42

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません