Допустим, ваш JSON выглядит так:
{"foo":"bar", "baz":"qux"}
И вам нужно превратить его в этот CSV со строкой заголовка:
foo,baz
bar,qux
Типичный способ сделать это следующий:
- Вызовите API, получите ответ JSON
- Десериализация JSON в объект. Это может быть POJO, или если ваши данные просты, вы можете просто вставить их в
Map
- Сериализация объекта в CSV и запись его в файловую систему
Джексон предоставляет отличный API обработки JSON, поэтому для этого с Джексоном будет выглядеть примерно так:
Создайте свой POJO:
public class MyBean {
@JsonProperty
private String foo
@JsonProperty
private String baz
}
Десериализовать JSON в класс MyBean
:
ObjectMapper om = new ObjectMapper();
MyBean b = om.readValue(jsonText, MyBean.class)
Теперь вам просто нужно вывести текст CSV
String csv = "foo,baz\n" + b.getFoo() + "," + b.getBaz();
BufferedWriter writer = new BufferedWriter(new FileWriter(fileName));
writer.write(csv);
Конечно, есть намного лучшие способы выписать CSV, если вы немного погуглите.