我正在尝试将JSON转换为CSV文件。但我正在面对这个问题 JSONArray docs = output.getJSONArray(“文本将因每次执行而异。”); 如何获取getJSONArray(“xxx”)???
的值 JSONObject output = new JSONObject(jsonString);
JSONArray docs = output.getJSONArray("elements");
File file=new File(csvFilepath);
String csv = CDL.toString(docs);
FileUtils.writeStringToFile(file, csv);
先谢谢
答案 0 :(得分:0)
这取决于您的JSON结构以及CSV的预期布局
没有剪切和粘贴的答案,你将不得不付出一些实际的努力,以你需要的方式映射事物。
从JSON中选择所需的对象,然后遍历生成的数组并将每个对应的映射到CSV中的一行
没有什么太费劲,只是普通的循环迭代和文件处理。
答案 1 :(得分:0)
我使用以下代码获得输出
String[] Names=output.getNames(output);
JSONArray docs =output.getJSONArray(Names[0]);
答案 2 :(得分:0)
如果您尝试将JSON文档转换为CSV,则可以尝试使用库json2flat。
它接受任何动态JSON文档并尝试将其转换为合适的格式。
有关代码用法和示例JSON转换,请click on this link.
答案 3 :(得分:-1)
这样的东西?
public static void main(String[] args) throws JSONException {
String numbers = "{\"test\":[{\"elements\" : \"1\"},{\"elements\":\"2\"},{\"elements\":\"3\"}]}";
JSONObject output = new JSONObject(numbers);
JSONArray docs = output.getJSONArray("test");
for (int i = 0; i < docs.length(); i++) {
System.out.println(docs.get(i));
}
}