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キーなどの機密情報を扱う際にもよく使われる手法です。
-
JavaでCSVファイルを読み込む方法|BufferedReaderによる基本的なデータ読み取り手順
CSVとは「Comma Separated Values(カンマ区切り値)」の略で、テキスト形式のデータファイルの一種です。CSVファイルでは、1行ごとに複数の項目がカンマ(,)で区切られて記録されており、拡張子は「.csv」として保存されます。表形式のデータを扱う際に広く利用されている、シンプルで汎用性の高いフォーマットです。 JavaでCSVファイルを読み込む仕組み JavaでCSVファイルを読み込むには、BufferedReaderクラスのreadLine()メソッドを使用するのが基本的な方法です。このメソッドを使うと、ファイルの内容を1行ずつ順番に読み取ることができます。 読み取った各
-
PDFからExcelにデータをインポートする3つの方法を徹底解説
PDFは最も汎用性の高いドキュメント形式のひとつです。文書を共有してもレイアウトが崩れたり、テンプレートが誤って編集されたりする心配がないため、ほぼあらゆる種類の文書をPDFとして配布できます。しかし、いざPDFを編集しようとすると問題が発生します。Excel(.xlsx)ファイルなどの構造化されたファイル形式から変換されたPDFであれば、オンラインコンバーターを使えば比較的簡単に元の形式へ戻せます。一方、スキャン画像で構成されたPDFは、変換すべきテキストデータが存在しないため、編集が非常に困難です。本記事で紹介する解決策は、実際のユーザーによって提案され、他のユーザーによっても検証済みの実