• ベストアンサー

プロパティファイルで日本語を扱う

プロパティファイルに日本語をいくつか定義しておきます。(例えばmessage=あいうえお など)これをResourceBundleでgetStringして表示すると、文字化けしてしまいます。コマンドプロンプトからプロパティファイルをUnicodeエスケープすれば、文字化けしないで表示できるのですが、プログラム上でUnicodeエスケープとかってできるのでしょうか?それともプロパティファイルで日本語を取得する場合は必ずコマンドプロンプトからUnicodeエスケープするしかないのでしょうか?また、他にプロパティファイルでの日本語の取得の仕方がありましたらご教授願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • satotake
  • ベストアンサー率100% (2/2)
回答No.4

ResourceBundleに頼らずに、プロパティファイルを読込むクラスを 作成するのが楽です。

その他の回答 (3)

  • deadlock
  • ベストアンサー率67% (59/87)
回答No.3

native2ascii+Propertiesが現在の形になっているのにはそれなりの理由があります。 小手先で解決しようとすると失敗するので、普通の方法を使いましょう。 あとはNo.1・No.2で仰られていることと同じです。 各質問への回答です。 >プログラム上でUnicodeエスケープとかってできるのでしょうか? できます。Propertiesのload/storeメソッドの実装を参照してください。 >それともプロパティファイルで日本語を取得する場合は必ずコマンドプロンプトからUnicodeエスケープするしかないのでしょうか? ResourceBundleを使うのであればその通りです。 >他にプロパティファイルでの日本語の取得の仕方がありましたらご教授願います。 ResourceBundle・native2asciiがやっていることを自分で実装し、Propertiesにデータを渡すことになります。 ただし、あらかじめnative2asciiを使用するのに対して非常に大きな手間がかかります。 あと、質問文(とタイトルとの組み合わせ方)が分かりにくいです。もう少し推敲してください。 目的、環境、現状分かっていること、試したこと をそれぞれ分けて書いてください。 意図した回答が貰えないのは、意図していることを伝えきれていないということなんですから、補足の内容ももう少し考えてみてください。

  • kazsharp
  • ベストアンサー率37% (16/43)
回答No.2

参考URLにプロパティファイルエディタがあります。 「PropertiesEditor Standalone」というのが「単独のエディタ」で他はEclipseのプラグインなどです。

参考URL:
http://sourceforge.jp/projects/propedit/
satosai
質問者

補足

ツールではなく、プログラムでやりたいのです。

回答No.1

素直にnative2ascii使えばいいのでは?

satosai
質問者

補足

それを使わないで表示する方法があれば知りたいという質問なのですが・・・・。

関連するQ&A