FrontPage

J2ME用の文字コード変換コードencconv
最終更新: 2008-02-03

更新履歴

  • 2008-01-25 Converter#getInstanceメソッドを追加、利用方法を修正
  • 2008-01-29 getUtf8Bytes、isMatchメソッドを追加、変換時に制御コードを無視するように修正

概要

  • NOKIAの携帯で日本語のメール受信をするために、携帯で動くPOPプロキシを作っていたところSJISとか日本語関係のエンコードセットが全くないことが判明・・・・、POPプロキシがかなり完成してきたのに、こんなことであきらめるのが悔しいから怒りにまかせて作った。
    今は反省している。。。。。
  • J2MEのMIDP環境にてShiftJIS、EUC-JP、ISO-2022-JPからUTF-8の文字列を取得するためのコードです。
  • unicode.orgの配布している変換リストに従って変換しています。

ライセンス

  • 大げさですがApacheライセンスです。まあつまり、好きに使ってください。
  • ただ、よかったら下記ブログにコメントでも書いてくれると嬉しいです。また、要望、バグ報告、動作環境の報告なども大歓迎です。

動作環境

  • 通常のJ2SE,J2MEで動作します。
    • NOKIA E61i(簡体中国語版)にて動作を確認してます。残念ながら半角カナのフォントは入ってなかった・・・・。
      e61i_ss.jpg

利用方法

  • ソース一式、文字コード変換用のバイトマップを利用したいMIDPソリューションプロジェクトに取り込んでください。
  • 単体でいろいろ遊びたい場合は解凍後、Maven2で下記コマンドを実行し、Eclipse化してください。
    mvn eclipse:eclipse

サンプルコード

//SJISのコンバータ
Converter conv = Converter.getInstance("SHIFT_JIS");
//EUC
// Converter conv = Converter.getInstance("EUC-JP");
//ISO2022JP
// Converter conv = Converter.getInstance("ISO-2022-JP");
//SJISのバイト配列からUTF-8の文字列を生成する場合
String str1 = conv.getUtf8(sjisBytes);
//SJISの文字化けした状態の文字列からUTF8の文字列を生成する場合
String str2 = conv.getUtf8(sjisString);
  • src/test/org/makino_style/midp/tools/ConverterTest?にテストコードがあります。

ダウンロード

制限事項/TODO

  • unicode.orgのマップはウェーブダッシュとかいろいろの諸問題の変換に対応してない。
    • そのうち対応予定
  • 相互変換(UTF-8からSJIS、EUC、JIS)はできない
    • NOKIA携帯で日本語を表示するのが主目的なので、今のところ予定はない。

添付ファイル: fileencconv-20080129-src.tar.gz 504件 [詳細] fileencconv-20080129-src.zip 543件 [詳細] filee61i_ss.jpg 514件 [詳細]

リロード   新規 編集 凍結 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Last-modified: 2010-03-14 (日) 07:00:30 (2598d)