Json-simple-encode-jsonobject

提供:Dev Guides
移動先:案内検索

JSON.simple-JSONObjectのエンコード

JSON.simpleを使用して、次の方法を使用してJSONオブジェクトをエンコードできます-

  • * JSONオブジェクトのエンコード-文字列へ*-シンプルなエンコード。
  • * JSONオブジェクトのエンコード-ストリーミング*-出力はストリーミングに使用できます。
  • * JSONオブジェクトのエンコード-マップの使用*-順序を維持してエンコードします。
  • * JSONオブジェクトのエンコード-マップとストリーミングの使用*-順序を保持してストリーミングすることによるエンコード。

次の例は、上記の概念を示しています。

import java.io.IOException;
import java.io.StringWriter;
import java.util.LinkedHashMap;
import java.util.Map;

import org.json.simple.JSONObject;
import org.json.simple.JSONValue;

class JsonDemo {
   public static void main(String[] args) throws IOException {
      JSONObject obj = new JSONObject();
      String jsonText;

      obj.put("name", "foo");
      obj.put("num", new Integer(100));
      obj.put("balance", new Double(1000.21));
      obj.put("is_vip", new Boolean(true));
      jsonText = obj.toString();

      System.out.println("Encode a JSON Object - to String");
      System.out.print(jsonText);

      StringWriter out = new StringWriter();
      obj.writeJSONString(out);
      jsonText = out.toString();

      System.out.println("\nEncode a JSON Object - Streaming");
      System.out.print(jsonText);

      Map obj1 = new LinkedHashMap();
      obj1.put("name", "foo");
      obj1.put("num", new Integer(100));
      obj1.put("balance", new Double(1000.21));
      obj1.put("is_vip", new Boolean(true));

      jsonText = JSONValue.toJSONString(obj1);
      System.out.println("\nEncode a JSON Object - Preserving Order");
      System.out.print(jsonText);

      out = new StringWriter();
      JSONValue.writeJSONString(obj1, out);
      jsonText = out.toString();
      System.out.println("\nEncode a JSON Object - Preserving Order and Stream");
      System.out.print(jsonText);
   }
}

出力

Encode a JSON Object - to String
{"balance":1000.21,"is_vip":true,"num":100,"name":"foo"}
Encode a JSON Object - Streaming
{"balance":1000.21,"is_vip":true,"num":100,"name":"foo"}
Encode a JSON Object - Preserving Order
{"name":"foo","num":100,"balance":1000.21,"is_vip":true}
Encode a JSON Object - Preserving Order and Stream
{"name":"foo","num":100,"balance":1000.21,"is_vip":true}