Dropbox

KKJConvを作っていて機種依存で苦労した部分の覚書です。

[ TextBoxの改行コード ]
Nokiaの場合単純に”\n”、16進数で0x0aを改行として考えれば問題ないです。
UIQ機(M1000やM600i)ではParagraph Separator(UTF-8だとe2 80 a9)というコードを使います。
NokiaのデバイスにParagraph Separatorを書き込んでも、ちゃんと改行されます。
問題はプログラム中でParagraph Separatorをどうやって表現するかということです。”\n”みたいな文字列で表現できれば簡単なのですが見つからなかったのでKKJConvの中では以下の関数で返る文字を使用しています。

private char getParaSepa()
{
    byte [] ps = new byte[3];
    String sP;
    // this is Paragrpah Separator in UTF-8
    ps[0] = (byte)-30; ps[1] = (byte)-128; ps[2] = (byte)-87;
    try {
        sP = new String(ps, "UTF-8");
        return sP.charAt(0);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return 0x0a;
}

[ Unicode ]
Nokiaや、おそらくSonyEricssonのデバイスではUTF-16LE, UTF-16BE, UTF-8のどれでもエンコード、デコードが出来ますがM1000ではUTF-8しか扱うことが出来ないようです。このためKKJConvの辞書は最初UTF-16LEを使っていたのをUTF-8に変更しました。

PS. 日本から上海に戻ってすぐ出張に出ています。移動日が多いだけで仕事は少ないのでKKJConvの更新が出来るつもりでしたが、食事行ったり飲みに行ったりで結局何も出来ていないです。

Trackback

6 comments untill now

  1. コラっ!遊んでばかりいちゃダメじゃないか!(笑)

  2. そうだそうだ!

  3. コザック @ 2006-08-04 21:28

    m(_ _)m まことに申し訳ありませんが、明日も悪いおじさんたちがユウワクするので遊んでしまいそうです。(^_^)/

  4. 週末は夜遅くまでお疲れ様でした。英気を養ったところでがんばって開発ぅ~!

  5. コザック @ 2006-08-07 11:51

    大陸モバイラーにとってはメッカともいえる香港での休日、楽しかったです。まだ夢から覚めたばかりのような感じです。また週末のリリースに向けて頑張ってみましょう。
    しかし、何故に上海はこんなに暑いのか(^_^;)

  6. お帰りやす。
    暑いんでまた蕎麦でも食べましょう

Add your comment now