現在、Wabaでは日本語の文字列リテラルを正しく表示することができません。 文字列リテラルからUnicodeへ変換するルーチンが正しく動作していないからです。
この問題を回避するために、文字列リテラルを使わずに文字の配列を使って 日本語を表示する方法が報告されています。 具体的には、(1)文字列をプラットフォームに応じた文字コード(UnicodeやSJIS)で変換して char型の配列に格納し、(2)その配列を引数にしてString(char[] c)を呼びます。 この方法ではUnicode変換ルーチンを使わないので、文字化けは起こりません。
また日本語の入力には、EditコントロールへUnicodeの文字列を入力する必要があります。
Wabaの多国語処理はWabaニュースグループで討論されています。最新の情報は Wabaニュースグループをご覧ください。
プラットフォームごとの対応
Windows CE(2.0)はUnicodeをサポートしているので日本語の表示や入力が可能です。 ただし上記の理由から日本語の表示に文字列リテラルを使うことはできません。 文字列をUnicodeへ変換する必要があります。
一方、PalmOS日本語版やJ-OSはUnicodeではなくSJISをサポートしているので 日本語の表示はできますが、日本語の入力はできません。 また日本語の表示には文字列をSJISへ変換する必要があります。
プラットフォームごとの対応を下表にまとめます。下表で「不可」あるいは「条件付可」 となっていても、何らかの方法で対応可能かも知れません。あなたがその方法をご存知でしたら、 ぜひ私に教えてください。
| 日本語の表示 | 日本語の入力 | |
| PalmOS | 条件付可* | 不可 |
| WindowsCE | 条件付可* | 可 |
S2c4w(String To Character For Waba) Ver. 1.0 (十河 満氏)
サンプル
Wabaで日本語を使ったサンプルプログラムです。
S2c4wはWaba(Java)ソースに含まれた文字列リテラルをUnicodeやSJISの16進表記へ変換する
ツールです。JDK1.1.xまたはJDK1.2(.x)で動作します。
日本語の処理方法とそのプログラミングを教えて下さった
原氏と十河氏に深く感謝いたします。
PalmPilot版 (原 嘉彦氏)
Windows CE版 (十河 満氏)
 
このページに関するご意見・ご質問は山口真悟(shingo@csse.yamaguchi-u.ac.jp)へお願いします。
Wabasoft社は当ページに一切関係や責任がありません。