4 回答

TA貢獻1799條經驗 獲得超8個贊
Jackson是使用 Java 讀寫 JSON 的事實上的標準庫。它還可以用于讀/寫 XML、YAML 和其他格式。
網上有很多關于如何使用Jackson的教程,比如http://www.studytrails.com/java/json/jackson-create-json/
一般用法:
創建/配置一個
ObjectMapper
創建您的數據 bean,并可選擇使用 Jackson 注釋對它們進行注釋以微調序列化
使用對象映射器序列化/反序列化您的 bean。
復雜的示例還展示了如何從/到其他格式序列化,以及如何使用自定義序列化: https://github.com/pwalser75/json-xml-yaml-test

TA貢獻1719條經驗 獲得超6個贊
您可以查看Java – 寫入文件和如何使用 Java 創建文件并寫入文件?
使用 POJO:
public class Data {
private final String name;
private final String id;
public Data(final String name, final String id) {
this.name = name;
this.id = id;
}
public String getName() {
return name;
}
public String getId() {
return id;
}
}
此代碼使用 Jackson 和ObjectMapper:
ObjectMapper objectMapper = new ObjectMapper();
Data data = new Data("abc", "123");
String jsonData = objectMapper.writeValueAsString(data);
Path path = Paths.get("myFile");
Files.write(path, jsonData.getBytes(StandardCharsets.UTF_8));

TA貢獻1820條經驗 獲得超2個贊

TA貢獻1895條經驗 獲得超3個贊
這是一個 file1.txt 內容:
{
"Name": "crunchify.com",
"Author": "App Shah",
"Company List": [
"Compnay: eBay",
"Compnay: Paypal",
"Compnay: Google"
]
}
Java代碼:
package com.crunchify.tutorials;
import java.io.FileWriter;
import java.io.IOException;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
public class CrunchifyJSONFileWrite {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws IOException {
JSONObject obj = new JSONObject();
obj.put("Name", "crunchify.com");
obj.put("Author", "App Shah");
JSONArray company = new JSONArray();
company.add("Compnay: eBay");
company.add("Compnay: Paypal");
company.add("Compnay: Google");
obj.put("Company List", company);
// try-with-resources statement based on post comment below :)
try (FileWriter file = new FileWriter("/Users/<username>/Documents/file1.txt")) {
file.write(obj.toJSONString());
System.out.println("Successfully Copied JSON Object to File...");
System.out.println("\nJSON Object: " + obj);
}
}
}
添加回答
舉報