チョコミントアイス

Windows embedded compact 7とvc++ 2008の環境に於いて、Windows APIのWideCharToMultiByte()やMultiByteToWideChar()ではutf-8エンコードが扱えないようです。
例えば、utf-8で書かれたファイルを読み込んで画面に表示するなどの処理を行いたいのですが、方法はないのでしょうか?

A 回答 (2件)

文字のエンコード自体は規格があり本質的にOS依存ではありません。


nkfやiconvといったアプリケーションはデータとしての文字のエンコードを変換するだけでOSに依存する部分はファイル入出力のAPI呼び出しくらいです。それもC言語の標準入出力レベルでできますのでポーティングに困ることはないでしょう。
    • good
    • 0
この回答へのお礼

ありがとうございました。
ご指摘に従い調べてみます。

お礼日時:2018/07/10 15:02

UTF-8はWindows内部で使っているUnicodeと比較的簡単に変換できるので自作してしまうというのが一つ。

あるいは文字コード変換アプリのnkfなんかを使う。
# 参考 https://qiita.com/nyango/items/16aa776a58fe3e26f …
    • good
    • 0
この回答へのお礼

ご連絡ありがとうございます。
●ご指摘のURLを参照しましたが、ここで述べられている「仕組み」は汎用的に使えるものなのでしょうか。
●質問したプログラムはマルチプラットフォームであり、Linux環境でも動きます。Linux環境ではエンコードの変換にiconv()を使用しておりますが、ご指摘のnkfやiconvをwindows ce 環境に簡単に持ち込むことができるでしょうか。

お礼日時:2018/07/10 13:25

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


おすすめ情報