在我的代码中,我正在将我的记录从mySQL DB写入csv文件,并且此方法可以正常工作。我现在想做的是将每个单值包装在双引号中,但是除了将双引号连接到rowMapper中的每个值之外,我什么都找不到来执行。有什么更快的方法吗?我正在使用 FlatFileItemWriter 写入文件。
答案 0 :(得分:0)
使用Open CSV中的au.com.bytecode.opencsv.CSVWriter。
OpenCSV的依赖性
<dependency>
<groupId>net.sf.opencsv</groupId>
<artifactId>opencsv</artifactId>
<version>2.3</version>
</dependency>
使用此构造函数创建作者。
CSVWriter writer = new CSVWriter(new FileWriter(rptFileName), CSVWriter.DEFAULT_SEPARATOR, CSVWriter.DEFAULT_QUOTE_CHARACTER);
答案 1 :(得分:0)
您可以在行标记器中进行设置。
@Bean
public DelimitedLineTokenizer delimitedLineTokenizer() {
DelimitedLineTokenizer lineTokenizer = new DelimitedLineTokenizer();
lineTokenizer.setDelimiter(DelimitedLineTokenizer.DELIMITER_COMMA);
lineTokenizer.setQuoteCharacter(DelimitedLineTokenizer.DEFAULT_QUOTE_CHARACTER);
return lineTokenizer;
}