
- JSON.simple 教程
- JSON.simple - 主頁
- JSON.simple - 概述
- JSON.simple - 環境設定
- JSON.simple - JAVA 對映
- 解碼示例
- 轉義特殊字元
- JSON.simple - 使用 JSONValue
- JSON.simple - 異常處理
- JSON.simple - 容器工廠
- JSON.simple - 內容處理程式
- 編碼示例
- JSON.simple - 編碼 JSONObject
- JSON.simple - 編碼 JSONArray
- 合併示例
- JSON.simple - 合併物件
- JSON.simple - 合併陣列
- 組合示例
- JSON.simple - 基本資料型別,物件,陣列
- JSON.simple - 基本資料型別,對映,列表
- 基本資料型別,物件,對映,列表
- 自定義示例
- JSON.simple - 自定義輸出
- 自定義輸出流
- JSON.simple 有用資源
- JSON.simple - 快速指南
- JSON.simple - 有用資源
- JSON.simple - 討論
JSON.simple - 自定義輸出流
我們可以在自定義類基礎上自定義 JSON 流輸出。僅需的要求是實現 JSONStreamAware 介面。
以下示例說明上述概念。
示例
import java.io.IOException; import java.io.StringWriter; import java.io.Writer; import java.util.LinkedHashMap; import java.util.Map; import org.json.simple.JSONArray; import org.json.simple.JSONStreamAware; import org.json.simple.JSONValue; class JsonDemo { public static void main(String[] args) throws IOException { JSONArray students = new JSONArray(); students.add(new Student(1,"Robert")); students.add(new Student(2,"Julia")); StringWriter out = new StringWriter(); students.writeJSONString(out); System.out.println(out.toString()); } } class Student implements JSONStreamAware { int rollNo; String name; Student(int rollNo, String name){ this.rollNo = rollNo; this.name = name; } @Override public void writeJSONString(Writer out) throws IOException { Map obj = new LinkedHashMap(); obj.put("name", name); obj.put("rollNo", new Integer(rollNo)); JSONValue.writeJSONString(obj, out); } }
輸出
[{name:"Robert",rollNo:1},{name:"Julia",rollNo:2}]
廣告