Java で JSON データを文字列に変換する

MD Aminul Islam 2023年10月12日
  1. Java で文字列から JSON データを作成する
  2. Java で JSON ファイルを文字列として読み取る
Java で JSON データを文字列に変換する

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 をインストールする必要があります。

著者: MD Aminul Islam
MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

関連記事 - Java JSON

関連記事 - Java String