在这里我使用jackson相关的库来操作。在maven中添加以下依赖。
com.fasterxml.jackson.dataformat
jackson-dataformat-csv
2.9.8
com.fasterxml.jackson.core
jackson-databind
2.9.8
一、将json转化成csv文件
String ss = "json字符串";
JsonNode jsonTree = new ObjectMapper().readTree(ss);
CsvSchema.Builder csvSchemaBuilder = CsvSchema.builder();
JsonNode firstObject = jsonTree.elements().next();
firstObject.fieldNames().forEachRemaining(fieldName -> {csvSchemaBuilder.addColumn(fieldName);} );
CsvSchema csvSchema = csvSchemaBuilder.build().withHeader();
//一般csv会用excel打开,必须指定为gbk编码
OutputStreamWriter ow = new OutputStreamWriter(new FileOutputStream(new File("e:/orderLines.csv")),"gbk");
CsvMapper csvMapper = new CsvMapper();
csvMapper.writerFor(JsonNode.class)
.with(csvSchema)