opencsv BeanToCsv 如何解析换行符将分割java beans

问题描述 投票:0回答:1

ArrayList 列表 = new ArrayList<>();

    CustomerAttribute attr1 = new CustomerAttribute().setAttributeId(123).setAttributeValue("abc,\nbcd");
    CustomerAttribute attr2 = new CustomerAttribute().setAttributeId(123).setAttributeValue("abc");
    list.add(attr1);
    list.add(attr2);
    HeaderColumnNameMappingStrategy<CustomerAttribute> strategy = new HeaderColumnNameMappingStrategy<>();
    strategy.setType(CustomerAttribute.class);
    Writer writer = new FileWriter("sample.csv", StandardCharsets.UTF_8);
    StatefulBeanToCsv<CustomerAttribute> build = new StatefulBeanToCsvBuilder<CustomerAttribute>(writer)
            .withMappingStrategy(strategy)
            .withQuotechar(CSVWriter.NO_QUOTE_CHARACTER)
            .build();

我只是设置了两个java bean来转换csv文件,但是由于值“abc, bcd”,csv 文件是 enter image description here

我只删除了两行,因为这会导致将此 csv 文件解析为 java bean 错误。 我怎样才能解决豆田中的这个换行符。我不知道女巫提交的遗嘱包含换行符,所以我无法检查和替换换行符。

opencsv
1个回答
0
投票

公共字符串 getAttributeValue() { 返回属性值.replaceAll(" ”、“”); }```

我能想到的临时解决办法是

对可能出现的换行字段的get方法进行replaceAll

© www.soinside.com 2019 - 2024. All rights reserved.