Eclipseで文字化けするプロパティファイルを編集する方法 | サービス | プロエンジニア

    Eclipseで文字化けするプロパティファイルを編集する方法

    • このページをはてなブックマークに追加

    eclipse」でJavaの「プロパティ(.properties)ファイル」を開くと、"Unicodeエスケープ形式"で書かれたファイルの為、日本語が文字化けして表示されます。このプロパティ(properties)ファイルを「eclipse」上で文字化けせずに表示し、更に日本語の編集も可能にするプロパティエディター「PropertiesEditorプラグイン」をご紹介します。
    eclipse」でプロパティ(properties)ファイルとその値を取得するための「Javaクラス」を作成して、日本語がどのように文字化けされるかを確認してから、プラグインを導入しプロパティファイルを編集する方法を確認してみましょう。

    最終更新日:2017年10月20日

    目次

    1. eclipse上でプロパティファイルを作成する

    1.1. japanese.propertiesファイルを作成する

    まずは、「eclipse」で「propertiesファイル」を作成すると、どのように表示されるか確認してみましょう。プロジェクト名「TestProj1」の「srcフォルダー」直下にプロパティ(properties)ファイルを作成します。

    eclipseメニュー」から[ファイル]→[新規]→[ファイル]を選択して、「新規ファイル」ウィンドウを開きます。

    ●「新規ファイル」ウィンドウ

    「srcフォルダー」の直下にファイルを作成しますので、「親フォルダーを入力または選択(E):」欄が「TestProj1/src」となっている事を確認して下さい。
    ファイル名(M):」は任意で構いません。今回は「japanese.properties」として完了ボタンをクリックします。

    ●eclipseエディター

    eclipseエディター」で「japanese.properties」を編集する事ができますので、以下のコードを入力してみて下さい。

    ●japanese.properties

    USER_NAME=山田花子 USER_ADDRESS1=東京都 USER_ADDRESS2=千代田区霞ヶ関

    プロパティファイルの「キー」となる「USER_NAME」、「USER_ADDRESS1」、「USER_ADDRESS2」に、値の「山田花子」、「東京都」、「千代田区霞ヶ関」を代入します。

    eclipse」のデフォルトエディター上で日本語を入力すると、変換して日本語入力を確定すると、「u」から始まる「Unicodeエスケープ形式」で表示されます。

    ●japanese.properties

    USER_NAME=\u5C71\u7530\u82B1\u5B50 USER_ADDRESS1=\u6771\u4EAC\u90FD USER_ADDRESS2=\u5343\u4EE3\u7530\u533A\u971E\u304C\u95A2

    英数字は正しく表示されますが、日本語で入力した部分は文字化けして表示されます。

    ▲ページトップへ戻る

    1.2. プロパティ(properties)ファイルの値を取得するクラスファイルを作成する

    1.2.1. 新規 Java クラスファイルの作成

    作成した「プロパティ(properties)ファイル」の値を表示するJavaのクラスファイルを作成してみましょう。

    ●新規 Java クラス

    eclipseメニュー」の[ファイル]→[新規作成]→[クラス]を選択して、「新規 Java クラス」ウィンドウを開いて下さい。「ソース・フォルダー(D:)」が、先程作成したプロパティ(properties)ファイルを作成したフォルダーの「TestProj1/src」フォルダーになっているかを確認し、異なるフォルダー名になっていたら、「参照(O)…」ボタンをクリックして該当フォルダーを選択して下さい。

    次に、「名前(M):」の欄にクラスの名前を任意で指定します。今回は「Japanese」としました。
    どのメソッド・スタブを作成しますか?」では、デフォルトで「継承された抽象メソッド」にチェックが入っていますので、加えて、「public static void main(String[] args)(V)」にチェックを入れて「完了ボタン」をクリックして下さい。

    ●Japanese.javaファイル

    ▲ページトップへ戻る

    1.2.2. ResourceBundle クラスを実装する

    Javaのクラスファイルを編集できますので、以下のコードを記述してファイルの保存をしてます。

    ●Japanese.java

    import java.util.ResourceBundle; public class Japanese { public static void main(String[] args) { // プロパティファイルの値を表示する ResourceBundle resources = ResourceBundle.getBundle("japanese"); System.out.println(resources.getString("USER_NAME")); System.out.println(resources.getString("USER_ADDRESS1")); System.out.println(resources.getString("USER_ADDRESS2")); } }

    「プロパティ(properties)ファイル」を取得する為の「ResourceBundleクラス」を使えるように、最初の行にパッケージのインポート文

    import java.util.ResourceBundle;

    を挿入します。「ResourceBundleクラス」は、クラスファイルと同じフォルダー内にあるプロパティファイルの取得をする事ができるクラスです。

    7行目の「getBundle()メソッド」に「プロパティファイルのファイル名(japanese)」を指定して使います。

    ●Japanese.java

    System.out.println(resources.getString("USER_NAME")); System.out.println(resources.getString("USER_ADDRESS1")); System.out.println(resources.getString("USER_ADDRESS2"));

    8行目から9行目の「getString()メソッド」でプロパティに設定されているキーの「USER_NAME」、「USER_ADDRESS1」、「USER_ADDRESS2」を引数に指定する事で、それぞれのキーに対応する値を表示します。

    ▲ページトップへ戻る

    1.2.3. クラスを実行してプロパティファイルの値を表示する

    それでは、コーディングしたファイルを実行して、プロパティファイルの値を表示してみましょう。

    eclipse」で「プロパティ(properties)ファイル」を開くと「Unicodeエスケープ形式」で保存されている為、文字化けしていました。

    ●japanese.propertiesファイル

    作成した「Japanese.javaクラス」を選択した状態で、「eclipseメニュー」より、[実行]→[実行]をクリックするとJavaのプログラムが実行されます。

    ●コンソール

    コンソール」には、キー(「USER_NAME」、「USER_ADDRESS1」、「USER_ADDRESS2」)の値である「山田花子」、「東京都」、「千代田区霞ヶ関」が表示されます。

    eclipse」の「コンソール」には、文字化けせずに日本語が表示されます。

    ▲ページトップへ戻る

    2. PropertiesEditorプラグインをインストールする

    2.1. PropertiesEditorプラグインとは?

    eclipse」は便利なプラグインがたくさん用意されています。
    PropertiesEditor」プラグインは、「propertiesファイル」の様に文字化けするファイルを編集する時に、日本語の文字コードで入力し、保存する時にはきちんと「Unicodeエスケープ形式」で保存してくれるプラグインです。

    ▲ページトップへ戻る

    2.2. PropertiesEditorプラグインをインストールする

    それでは、早速「PropertiesEditorプラグイン」をインストールしてみましょう。
    eclipseメニュー」より、[ヘルプ]→[新規ソフトウェアのインストール…]を選択して 「インストール」ウィンドウを表示します。

    ●インストールウィンドウ

    [作業対象(W):]の右にある「追加」ボタンをクリックして「リポジトリーの追加」ウィンドウを表示して下さい。

    ●リポジトリーの追加

    「名前(N):」に

    PropertiesEditor

    「ロケーション(L):」

    https://propedit.sourceforge.jp/eclipse/updates/

    を入力して「OK」ボタンを押し下さい。インストールできるプラグインの一覧がボックス内に表示されます。

    ●https://propedit.sourceforge.jp/eclipse/updates/

    一番下にある「プロパティエディター」を選択して「次へ」ボタンをクリックします。

    ●インストール詳細

    インストール詳細」ウィンドウでインストールするプラグインの「PropertiesEditor_Asian_NLS」と「プロパティエディタ」を確認したら、「次へ」ボタンを押して下さい。

    ●ライセンスのレビュー

    ライセンスのレビュー」ウィンドウでライセンス・テキストを確認したら、「使用条件の条項に同意します(A)」にチェックを入れて「完了」ボタンをクリックするとインストールが開始されます。

    ●セキュリティ警告

    セキュリティ警告」のウィンドウが出てきますが、「インストール」ボタンを押してプラグインのインストールを実行して下さい。

    ●ソフトウェア更新

    インストールが完了すると、ソフトウェアの更新を聞かれます。「変更内容を有効にするには、Eclipseを再始動する必要があります。すぐに再始動しますか?」のメッセージが出てきたら「今すぐ再始動」ボタンをクリックして、「eclipse」を再起動して下さい。

    ▲ページトップへ戻る

    2.3. PropertiesEditorプラグインの使い方

    早速、「japanese.properties」を「プロパティエディター(PropertiesEditor)」を使って開いてみましょう。「eclipse」のエディター上で右クリックをして、
    [次で開く(I)]→[プロパティエディター]を選択します。

    ●プロパティエディターで開く

    「プロパティエディター」でプロパティ(properties)ファイルを開くと文字化けして表示されていた日本語の部分もeclipse上で正常に表示されます。

    ●プロパティエディター

    もちろん、ファイルの編集をして保存をする事も可能です。「eclipse」には様々なプラグインがありますので、自分好みのプラグインを導入し、カスタマイズして開発作業を効率よく進めることができます。

    ▲ページトップへ戻る

    【関連記事】Eclipseで文字化けした日本語を直す方法
    【関連記事】(公式)英語版 Eclipse のダウンロードページ
    【関連記事】Pleiades - Eclipse プラグイン日本語化プラグイン

    Eclipseを使った最新求人情報をチェック!

    • このページをはてなブックマークに追加

    おすすめ記事

  • OCTPASS

    ピックアップ

    正社員

    【PHP】サーバーサイドエンジニア|アドテクマーケティング★自社ツールの開発

    年収 :600万円〜

    ◆サーバーサイドエンジニアとして自社ツールの開発を担当 ◆最先端のマーケティングスキルも身につける...

    株式会社 ピアラ

    正社員

    【Java/PHP】システム開発エンジニア|企業グループIT部門◎100%自社内開発★未経験

    年収 :250万円〜350万円

    ◆700名規模グループ内のITシステムの開発や保守業務 ◆自社内開発100%!じっくりと業務に取り組める ◆...

    株式会社イノベーションネクスト

    正社員

    【LAMP】システムエンジニア|100%自社内開発★服装自由・フレックス◎独学可

    年収 :300万円〜350万円

    ◆自社サービスの企画~開発までをお任せします。 ◆シェアNo.1クラウドソリューションを提供するベンチ...

    ブライシス株式会社

    正社員

    【PHP/Java】システムエンジニア|100%自社内開発★在宅導入/時短OK◎働くママさん歓迎

    年収 :350万円〜600万円

    ◆自社サービスの企画~開発までをお任せします。 ◆シェアNo.1クラウドソリューションを提供するベンチ...

    ブライシス株式会社

    正社員

    【PHP/Python】開発エンジニア|自社ECサイト★マンガ×IT少数精鋭のベンチャー◎独学可

    ◆月間10億PVのマンガサービスを支えるPythonエンジニア ◆マンガに興味ある方!はじめはPython勉強意欲...

    株式会社TORICO