我从邮递员那里得到了以下JSON对象:
[{"Name":"one","age":"22"}]
如果文件为空,则应粘贴为:
[{"Name":"one","age":"22"},{"Name":"one","age":"22"}]
其他:
suffixNum
谢谢。
答案 0 :(得分:0)
这有点不清楚,但是您想传回Collection或方括号[]的数组。
大致来说{}映射到Java对象。 []映射到Java集合,例如ArrayList
答案 1 :(得分:0)
因为您没有提及太多细节,所以我假设您始终可以接收HTTP响应(例如HTTP状态代码为200。),并且该响应始终是有效的JSON字符串。
一种简单的方法是使用List<Map<String, Object>>
进行数据操作。以下代码段(不考虑任何异常处理)显示了如何使用List<Map<String, Object>>
来读写文件。
示例代码(使用Java 8使用Jackson JSON解析器编写)
List<Map<String, Object>> jsonList = new ArrayList<Map<String, Object>>();
Path path = Paths.get("json_result.txt"); //this file already existed
//read file and save content into jsonList
Stream<String> lines = Files.lines(path);
lines.forEach(line -> {
try {
jsonList.addAll(mapper.readValue(line, new TypeReference<List<Map<String, Object>>>(){}));
}
...
}
//add new response string into jsonList and write to file
String responseStr = "{\"Name\":\"one\",\"age\":\"22\"}";
jsonList.add(mapper.readValue(responseStr, new TypeReference<Map<String, Object>>(){}));
Files.write(path, jsonList.toString().getBytes());