Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでプロパティファイルからデータを読み取る方法を解説

JavaのPropertiesクラスは、Hashtableクラスのサブクラスであり、永続化可能なプロパティの集合(プロパティセット)を表します。Propertiesオブジェクトはストリームへ保存したり、ストリームから読み込んだりすることができます。また、プロパティリスト内の各キーとそれに対応する値は、どちらも文字列型として扱われます。

Javaでは、Propertiesファイルを使うことでアプリケーションの設定情報を外部化し、キーと値(key-value)のペアとして管理できます。Propertiesクラスが提供するload()メソッドを使用すると、.propertiesファイルに記述されたキーと値のペアを簡単に読み込むことが可能です。

構文

public class Properties extends Hashtable

credentials.propertiesファイルの例

以下のような内容のプロパティファイルを用意します。

username=admin
password=admin@123

サンプルコード

次の例では、readPropertiesFile()メソッド内でFileInputStreamを使って.propertiesファイルを開き、load()メソッドで読み込んでいます。その後、getProperty()メソッドでキーを指定して値を取得し、コンソールに出力しています。

import java.io.*;
import java.util.*;
public class ReadPropertiesFileTest {
    public static void main(String args[]) throws IOException {
        Properties prop = readPropertiesFile("credentials.properties");
        System.out.println("username: "+ prop.getProperty("username"));
        System.out.println("password: "+ prop.getProperty("password"));
    }
    public static Properties readPropertiesFile(String fileName) throws IOException {
        FileInputStream fis = null;
        Properties prop = null;
        try {
            fis = new FileInputStream(fileName);
            prop = new Properties();
            prop.load(fis);
        } catch(FileNotFoundException fnfe) {
            fnfe.printStackTrace();
        } catch(IOException ioe) {
            ioe.printStackTrace();
        } finally {
            fis.close();
        }
        return prop;
    }
}

コードのポイント

  • FileInputStreamで対象の.propertiesファイルを開きます。
  • Propertiesオブジェクトのload()メソッドにストリームを渡すことで、ファイルの内容がメモリ上にロードされます。
  • getProperty("キー名")で特定の設定値を取得できます。
  • finallyブロックでストリームを確実にクローズし、リソースリークを防いでいます。

実行結果

username: admin
password: admin@123

このように、Propertiesクラスを利用すれば、設定情報をコードから分離して外部ファイルで管理できるため、環境ごとの設定変更も容易になります。データベース接続情報やAPIキーなどの機密情報を扱う際にもよく使われる手法です。

  1. JavaでCSVファイルを読み込む方法|BufferedReaderによる基本的なデータ読み取り手順

    CSVとは「Comma Separated Values(カンマ区切り値)」の略で、テキスト形式のデータファイルの一種です。CSVファイルでは、1行ごとに複数の項目がカンマ(,)で区切られて記録されており、拡張子は「.csv」として保存されます。表形式のデータを扱う際に広く利用されている、シンプルで汎用性の高いフォーマットです。 JavaでCSVファイルを読み込む仕組み JavaでCSVファイルを読み込むには、BufferedReaderクラスのreadLine()メソッドを使用するのが基本的な方法です。このメソッドを使うと、ファイルの内容を1行ずつ順番に読み取ることができます。 読み取った各

  2. PDFからExcelにデータをインポートする3つの方法を徹底解説

    PDFは最も汎用性の高いドキュメント形式のひとつです。文書を共有してもレイアウトが崩れたり、テンプレートが誤って編集されたりする心配がないため、ほぼあらゆる種類の文書をPDFとして配布できます。しかし、いざPDFを編集しようとすると問題が発生します。Excel(.xlsx)ファイルなどの構造化されたファイル形式から変換されたPDFであれば、オンラインコンバーターを使えば比較的簡単に元の形式へ戻せます。一方、スキャン画像で構成されたPDFは、変換すべきテキストデータが存在しないため、編集が非常に困難です。本記事で紹介する解決策は、実際のユーザーによって提案され、他のユーザーによっても検証済みの実