JavaでJSONファイルを読み込む方法|json-simpleライブラリの使い方を解説
JSONは、広く利用されているデータ交換フォーマットの一つであり、軽量かつ言語に依存しないという大きな特徴を持っています。JavaでJSONを扱う際に便利なのが、軽量なJSON処理ライブラリであるjson-simpleです。このライブラリを使えば、JSONファイルの読み込み・書き出しはもちろん、JSONテキストのエンコードやデコードも簡単に行えます。さらに、JSON仕様(RFC4627)に完全準拠しているため、安心して利用できます。
JSONファイルを読み込むには、まずjson-simple.jarファイルをダウンロードし、プロジェクトのクラスパスに設定しておく必要があります。
読み込むJSONファイルの例

今回は、上記のように名前・コース・科目リストを含むJSONファイル(course.json)を読み込む例を見ていきましょう。
サンプルコード
import java.io.*;
import java.util.*;
import org.json.simple.*;
import org.json.simple.parser.*;
public class JSONReadFromTheFileTest {
public static void main(String[] args) {
JSONParser parser = new JSONParser();
try {
Object obj = parser.parse(new FileReader("/Users/User/Desktop/course.json"));
JSONObject jsonObject = (JSONObject)obj;
String name = (String)jsonObject.get("Name");
String course = (String)jsonObject.get("Course");
JSONArray subjects = (JSONArray)jsonObject.get("Subjects");
System.out.println("Name: " + name);
System.out.println("Course: " + course);
System.out.println("Subjects:");
Iterator iterator = subjects.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
コードのポイント
- JSONParserクラスのインスタンスを作成し、JSONの解析を行います。
- parse()メソッドにFileReaderオブジェクトを渡すことで、指定したパスのJSONファイルを読み込みます。
- 解析結果はJSONObjectにキャストし、get()メソッドでキーを指定して値を取得します。
- 配列形式のデータはJSONArrayとして受け取り、Iteratorを使って要素を順番に取り出します。
実行結果
Name: Raja Course: MCA Subjects: subject1: MIS subject2: DBMS subject3: UML
このように、json-simpleライブラリを使えば、わずかなコードでJSONファイルの内容を簡単に読み取ることができます。例外処理を適切に行えば、ファイルが存在しない場合やJSON形式が不正な場合にも安全に対応できます。
-
JavaでCSVファイルを読み込む方法|BufferedReaderによる基本的なデータ読み取り手順
CSVとは「Comma Separated Values(カンマ区切り値)」の略で、テキスト形式のデータファイルの一種です。CSVファイルでは、1行ごとに複数の項目がカンマ(,)で区切られて記録されており、拡張子は「.csv」として保存されます。表形式のデータを扱う際に広く利用されている、シンプルで汎用性の高いフォーマットです。 JavaでCSVファイルを読み込む仕組み JavaでCSVファイルを読み込むには、BufferedReaderクラスのreadLine()メソッドを使用するのが基本的な方法です。このメソッドを使うと、ファイルの内容を1行ずつ順番に読み取ることができます。 読み取った各
-
Javaでプロパティファイルからデータを読み取る方法を解説
JavaのPropertiesクラスは、Hashtableクラスのサブクラスであり、永続化可能なプロパティの集合(プロパティセット)を表します。Propertiesオブジェクトはストリームへ保存したり、ストリームから読み込んだりすることができます。また、プロパティリスト内の各キーとそれに対応する値は、どちらも文字列型として扱われます。Javaでは、Propertiesファイルを使うことでアプリケーションの設定情報を外部化し、キーと値(key-value)のペアとして管理できます。Propertiesクラスが提供するload()メソッドを使用すると、.propertiesファイルに記述されたキー