首页 > 解决方案 > 在 Java Spring 中从流创建 CSV 文件输出

问题描述

我正在尝试输出一个 csv 文件。该项目使用 Spring 在 Java 中。总的来说,这是我第一次处理流。

void csv(Stream<T> data, OutputStream os){

Writer writer = new OutputStreamWriter(os);
StatefulBeanToCsv<T> beanToCsv;

ColumnPositionMappingStrategy<T> mappingStrategy = new ColumnPositionMappingStrategy<>();
mappingStrategy.setType((Class<T>) data.getClass());

beanToCsv = new StatefulBeanToCsvBuilder<T>(writer)
                    .withMappingStrategy(mappingStrategy)
                    .withQuotechar(CSVWriter.NO_QUOTE_CHARACTER)
                    .build();
data.forEach(t -> {
try{ 
beanToCsv.write(t);
} //catches
});   

}

上面的有点伪代码块在邮递员中输出 csv 文件中的所有条目,但是它们只显示为数字并且是空的。调试时,数据不为空,每个“forEach”显示一个不同的条目,但输出为空。关于正在发生的事情或我应该调查导致这种情况的任何提示?

标签: javaspringstreamexport-to-csv

解决方案


推荐阅读