• 締切済み

Linuxでの文字コ-ド

Redhat Linuxで、Javaアプリ(JBOSS使用)を稼動させたいのですが、画面より入力した文字(漢字、カナ)がうまく認識できません。   (1)Tomcatの「CharacterEncodingFilter」を使用    → Windows-31Jを指定  (2)上記の指定を「UTF-8」に変えてもダメでした  (3)同じアプリは、Windows2000サ-バ-で稼動中 Redhat LinuxのOSエンコ-ドが、「UTF-8」の場合のみうまく認識ができません。 OSエンコ-ドを「SJIS」に変えて稼動させると、問題なく認識してくれます。 何かいい解決方法(OSエンコ-ド「UTF-8」使用)がないでしょうか。   

みんなの回答

  • nogutan
  • ベストアンサー率34% (40/116)
回答No.2

文字コードをMS932にしてみてはいかがでしょうか。 自分は、そこで上記のコードにして上手くいきました。

参考URL:
http://www.atmarkit.co.jp/fjava/rensai2/webopt08/webopt08.html
shogo0303
質問者

お礼

エンコ-ド変換を「MS932」にしましたが、ダメでした。

  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

RedHatならEUC-JPにしてみたらどうでしょう UTF-8になったのはFedra Coreからですし。

shogo0303
質問者

お礼

いろいろ検証してみると、コ-ド変換自体は全然問題がありませんでした。 半角と全角のチェックを、LengthとByteで判定していたのですが、UTF-8にしたことにより、半角カナでも3バイトコ-ドになっていたための不具合でした。 S-JIS(Windows-31J)   アクオス(半角) → Length(4)、Byte(4)   東芝(全角)   → Length(2)、Byte(4) UTF-8   アクオス(半角) → Length(4)、Byte(12)   東芝(全角)   → Length(2)、Byte(6) 

関連するQ&A

専門家に質問してみよう