ホームページ >Java >&#&チュートリアル >## 階層型 Java パッケージ構造でプロパティ ファイルをロードするにはどうすればよいですか?
プロパティ ファイルの検索
階層的な Java パッケージ構造を扱う場合、プロパティ ファイルのロードが困難になることがあります。この質問は、com.al.common.email.templates パッケージ内に埋め込まれたプロパティ ファイルへのアクセスを中心に展開しています。
これに対処するために、指定されたパッケージ内から Properties オブジェクトをロードする解決策が提供されています。
<code class="java">Properties prop = new Properties(); InputStream in = getClass().getResourceAsStream("foo.properties"); prop.load(in); in.close();</code>
このコードを適切な例外処理で囲むことが重要です。
パッケージ認識
プロパティ ファイルにアクセスするクラスが com 内にない場合.al.common.email.templates パッケージでは、InputStream を別の方法で取得する必要があります:
<code class="java">InputStream in = getClass().getResourceAsStream("/com/al/common/email/templates/foo.properties");</code>
相対パスと絶対パス
getResource() の相対パスおよびgetResourceAsStream() は、クラスが含まれるパッケージを表すディレクトリ内を検索します。絶対パス (「/」で始まる) は現在のパッケージを無視しますが、先頭に「/」のない相対パスはパッケージ ディレクトリに対する相対パスです。
以上が## 階層型 Java パッケージ構造でプロパティ ファイルをロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。