Java のプロパティファイル

Rupam Yadav 2023年10月12日
  1. Java プロパティファイルで値を作成および設定する
  2. Java プロパティファイルからプロパティを取得する
  3. Java プロパティファイルからすべてのキーと値を取得する
Java のプロパティファイル

Java のプロパティは、Java アプリケーションで使用する必要のある構成値です。

プロパティファイルは、これらの値をキーと値のペアで含むファイルです。このタイプのファイルには通常、.properties 拡張子が付いています。

Java プロパティファイルで値を作成および設定する

このチュートリアルの最初のセクションでは、プロパティファイルを作成し、プロパティをキーと値のペアとして設定するプログラムを作成します。

Java は、プロパティの設定または削除、すべてのプロパティの一覧表示などの操作を実行するためのいくつかのメソッドを含む java.util パッケージの Properties クラスを提供します。

プロパティの設定に進む前に、ファイルが配置されているディレクトリからファイルプロパティを取得する必要があります。ファイルが存在しない場合は、新しいファイルを作成します。FileOutputStream() のオブジェクトを作成し、OutputStream インスタンスを返すコンストラクターでプロパティファイルのパスを渡します。

new Properties() を使用して Properties オブジェクトを作成し、setProperty() メソッドを呼び出してファイルにプロパティ値を設定します。setProperty() メソッドは 2つの引数を取ります。最初の引数はキーで、2 番目の引数は値です。

この例では、3つのプロパティを設定し、最後にプロパティをファイルに格納して、store() メソッドを呼び出し、outputStream とオプションのコメントを引数として渡します。プロパティファイルを作成し、プロパティを挿入する必要があります。

import java.io.*;
import java.util.Properties;

public class JavaExample {
  public static void main(String[] args) {
    try {
      OutputStream outputStream = new FileOutputStream("myConfigs.properties");

      Properties properties = new Properties();

      properties.setProperty("version", "1.1");
      properties.setProperty("projectName", "PropertiesFileExample");
      properties.setProperty("date", "2021/12/27");
      properties.store(outputStream, "Properties are stored here");

      System.out.println(properties);
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

出力:

{date=2021/12/27, projectName=PropertiesFileExample, version=1.1}

myConfigs.properties ファイル:

#Properties are stored here
#Mon Dec 27 16 : 52 : 38 IST 2021
date = 2021 / 12 / 27 projectName = PropertiesFileExample version = 1.1

Java プロパティファイルからプロパティを取得する

このセクションでは、Properties クラスとそのメソッドを使用して、プロパティファイルから特定のプロパティを提供します。前の例とは異なり、このプログラムでファイルを読み取るため、OutputStream の代わりに InputStream を使用します。

Properties クラスのオブジェクトを作成し、load() メソッドを呼び出し、InputStream オブジェクトを引数として渡します。ファイルがロードされたら、getProperty() 関数を呼び出して、フェッチする値のキーを渡します。

結果として値が取得され、出力に表示されます。

import java.io.*;
import java.util.Properties;

public class JavaExample {
  public static void main(String[] args) {
    try {
      InputStream inputStream = new FileInputStream("myConfigs.properties");

      Properties properties = new Properties();
      properties.load(inputStream);

      System.out.println(properties.getProperty("date"));

    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

出力:

2021/12/27

Java プロパティファイルからすべてのキーと値を取得する

list() は、プロパティを出力ストリームに出力する Properties クラスの関数です。プログラムでプロパティファイルを読み取り、Properties オブジェクトを作成し、load() 関数を使用してファイルをロードします。

プロパティを出力するには、list() メソッドを呼び出し、コンソールに出力する出力ストリームである引数として System.out を渡します。

import java.io.*;
import java.util.Properties;

public class JavaExample {
  public static void main(String[] args) {
    try {
      InputStream inputStream = new FileInputStream("myConfigs.properties");

      Properties properties = new Properties();

      properties.load(inputStream);
      properties.list(System.out);

    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

出力:

-- listing properties --
date=2021/12/27
projectName=PropertiesFileExample
version=1.1
著者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn