HOWTO · Java
Java で JSON データを文字列に変換する
このチュートリアルでは、JSON データを Java で文字列に変換する方法について説明します。
JavaScript Object Notation として完全に知られている JSON は、データを転送および保存するためのテキスト形式です。 分かりやすく自己紹介です。
JSON は、データ交換用の軽量形式です。 JavaScript オブジェクト表記を組み合わせたプレーンテキストを使用します。
さらに、JSON は言語に依存しないため、任意のプログラミング言語を使用してデータを簡単に作成、変更、または保存できます。
特定のデータの抽出などのさまざまな操作を実行するために、JSON データを文字列に変換する必要がある場合があります。 この記事では、JSON データまたはファイルを文字列に変換する方法を示します。
また、トピックを簡単にするために、必要な例と説明を使用してトピックについて説明します。
Java で文字列から JSON データを作成する
まず、JSON データを文字列に変換する方法を確認します。
以下の例では、JSON オブジェクトを文字列に変換します。 この例のコードは次のようになります。
import org.json.CDL;
import org.json.JSONArray;
import org.json.JSONTokener;
public class JavaArticles {
public static void main(String[] args) {
String JsonData = "CANADA, UK, USA"; // Taking the JSON data as string
JSONArray JsonArray =
CDL.rowToJSONArray(new JSONTokener(JsonData)); // Converting to the JSON array
System.out.println(JsonArray); // Printing the JSON array
System.out.println(CDL.rowToString(JsonArray));
JsonArray = new JSONArray(); // Creating a JSON array object.
JsonArray.put("ID"); // Put a field to JSON array name `ID`
JsonArray.put("Name"); // Put a field to JSON array name `Name`
JsonArray.put("Age"); // Put a field to JSON array name `Age`
JsonData = "1, Alex, 25 \n"
+ "2, Robert, 30 \n"
+ "3, Micle, 27"; // Taking the JSON data as string
System.out.println(CDL.toJSONArray(JsonArray, JsonData)); // Printing the JSON data
}
}
上記の例は、文字列から JSON ファイルを生成する方法を示しています。 また、コード内の各行の目的は既に提供されています。
上記のプログラムを実行すると、以下のような出力が得られます。
["CANADA","UK","USA"]
CANADA,UK,USA
[{"Age":"25","ID":"1","Name":"Alex"},{"Age":"30","ID":"2","Name":"Robert"},{"Age":"27","ID":"3","Name":"Micle"}]
Java で JSON ファイルを文字列として読み取る
次に、JSON ファイルを文字列として読み取る方法を見ていきます。
次の例では、JSON ファイルのコンテンツを抽出し、それを文字列に変換します。 たとえば、次のような JSON ファイルがあるとします。
{
"name":"Thomas",
"age":22,
"hobbies":["Gardening","Swimming"],
"languages":{"English":"Advanced"}
}
サンプルコードのコードを以下に示します。
import java.nio.file.Files;
import java.nio.file.Paths;
public class ReadJsonFileAsString {
public static void main(String[] args) throws Exception {
String Myfile = "test/resources/myFile.json";
String JsonData = readFileAsString(Myfile);
System.out.println(JsonData);
}
public static String readFileAsString(String Myfile) throws Exception {
return new String(Files.readAllBytes(Paths.get(Myfile)));
}
}
上記の例では、最初に文字列変数でファイルの場所を取得します。 その後、コードの最後に定義された readFileAsString() メソッドを使用してファイルを読み取ります。
このメソッドは文字列を返します。 その文字列を System.out.println(JsonData); 行に出力します。
この関数では、readAllBytes() メソッドを使用してファイルを読み取り、データを返しました。 プログラムを実行すると、以下のような出力が得られます。
{
"name":"Thomas",
"age":22,
"hobbies":["Gardening","Swimming"],
"languages":{"English":"Advanced"}
}
JSON を使用する場合は、必要な .jar ファイルをプロジェクトに含めてください。 そうしないと、エラーが発生する可能性があります。
この記事で紹介するコード例は Java で書かれていることに注意してください。 システムに Java が含まれていない場合は、環境に Java をインストールする必要があります。