重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

お世話になります。
Windows上でWindowsのAPIを使って
あるユニコード文字があるコードページで表示可能か否かを
調べる方法はありますか?

簡単に考えると、WideCharToMultiByteで 変換不可文字と判断されるか
否かをみるのかと思うのですが、他に方法はありますでしょうか?

A 回答 (2件)

あるユニコード文字が、あるコードページ文字に変換可能かどうかは、


実際に変換してみるのが、一番だと思います。

WideCharToMultiByte()は、対応しているコードページが制限されますから、
WideCharToMultiByte()が対応していない、コードページについては、調べられませんよ。

この回答への補足

Yanceさん

回答ありがとうございます。
では実際に変換するには、なんというAPIを使うのが適切でしょうか?

補足日時:2008/11/18 11:08
    • good
    • 0

文字コード変換ですが、


オープンソースであれば、
iconvを使用しているのが多いです。

Microsoftのチュートリアルによると、
InternetExplorerのコンポーネントを使用して文字コード変換しているみたいです・・・
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

iconvもManpageをみると、
The encodings permitted are system dependent.
とあり、結局、これもすべてのコードページをサポートするわけではなく
その意味では、WideCharToMultiByteのラッパにすぎないと思われ
WideCharToMultiByte APIで十分なように思えてきました。

今回は、システムがサポートしないコードページの場合は、すべからく変換不可と判断して構わないので、WideCharToMultiByteでいこうと思います。

お礼日時:2008/11/19 18:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!