【问题标题】:Parse List to a String in Open CSV将列表解析为 Open CSV 中的字符串
【发布时间】:2020-07-02 14:32:49
【问题描述】:

我正在使用 Spring-Boot 和 OpenCsv 将 MyEntity 转换为 csv 并将其作为响应返回。字符串字段按预期解析。 MyEntity (myList) 的字段之一是MyClass 的列表,我想将此字段解析为 json 字符串。如何告诉 Open CSV 进行解析而不是使用列表的 toString()?是否有任何字段注释可以添加到字段并在那里定义映射?

public class MyEntity {
    
      public String myName;
      
      public List<MyClass> myList
    
}



StatefulBeanToCsv<MyClass> bean = new StatefulBeanToCsvBuilder<>(writer)
          .withQuotechar(CSVWriter.NO_QUOTE_CHARACTER)
          .withSeparator(',')
          .build();
      bean.write(myEntities)

谢谢

【问题讨论】:

    标签: java spring-boot opencsv


    【解决方案1】:
    String json = new Gson().toJson(myList);
    

    依赖等级

    dependencies {
        compile group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
    }
    

    或行家

    <dependencies>
        <dependency>
          <groupId>com.google.code.gson</groupId>
          <artifactId>gson</artifactId>
          <version>2.8.5</version>
        </dependency>
    </dependencies>
    

    【讨论】:

    • 感谢@Vojin,实际上我知道如何将对象解析为 json ,我的问题是如何告诉 OpenCsv 使用此解析而不是列表的 toString?
    • 将整个 MyEntity 对象解析为 json 并传递对象的 json 版本
    猜你喜欢
    • 1970-01-01
    • 2011-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-21
    • 1970-01-01
    • 2015-06-20
    • 2020-07-10
    相关资源
    最近更新 更多