首页 > 解决方案 > 如何将包含 json 值的对象写入 java 中的 csv 文件?

问题描述

我有一个对象 myData,它有 100 条 json 记录,例如:

[Record{Purpose='Medical ', Date='2020-10-14', ID='9215524400  ', UpdateTime='2020-10-14', Checkin='2020-10-14'},...] 

我需要以正确的 csv 格式将其写入 csv 文件。

这是我的代码:

   FileWriter csvWriter = new FileWriter("myFilecsv.csv");
   csvWriter.write(String.valueOf(myData)); //Its writing the file as a String

我尝试使用以下代码对其进行转换:

        JFlat flatMe = new JFlat(str);
        //To get the 2D representation
        flatMe.json2Sheet().headerSeparator("_").getJsonAsSheet();
        //write the 2D representation in csv format
        flatMe.write2csv("myFilecsv.csv");

这是抛出错误:

 java.lang.ClassNotFoundException: com.jayway.jsonpath.Configuration$Defaults

我正在使用以下依赖项

   <dependency>
        <groupId>com.github.opendevl</groupId>
        <artifactId>json2flat</artifactId>
        <version>1.0.3</version>
    </dependency>
    <dependency>
        <groupId>com.jayway.jsonpath</groupId>
        <artifactId>json-path</artifactId>
        <version>2.0.0</version>
        <scope>test</scope>
    </dependency>

有没有更好的方法来实现这一目标?请告诉我 :

标签: javacsvfileexport-to-csvexport-to-excel

解决方案


添加 jar json2flat-1.0.3.jar 解决了这个问题。


推荐阅读