Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中使用CSVWriter写入CSV时删除空格_Java_Csv_Export To Csv - Fatal编程技术网

在java中使用CSVWriter写入CSV时删除空格

在java中使用CSVWriter写入CSV时删除空格,java,csv,export-to-csv,Java,Csv,Export To Csv,我正在使用JAVA中的CSVWriter从表中读取并写入CSV文件。我的分隔符是'control-A'。但有一列的注释中有空格。所以,如何在写入CSV文件时从值中删除空格。 我的代码是 Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("query"); CSVWriter writer = new CSVWriter(new FileWriter(filePath + "File_writerCSV

我正在使用JAVA中的
CSVWriter
从表中读取并写入
CSV
文件。我的分隔符是
'control-A'
。但有一列的注释中有空格。所以,如何在写入CSV文件时从值中删除空格。 我的代码是

Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("query");
CSVWriter writer = new CSVWriter(new FileWriter(filePath + "File_writerCSV.csv"),'\u0001');
writer.writeAll(rs,false);
writer.close();

另一种方法是,如果一个值包含“,”字符,则将该值放在引号中。 例如,如果值为 宝马、奥迪、美世-->将其转换为“宝马、奥迪、美世”。因此,它将被视为1个实体

String s = "as,as,as";
        if(s.contains(","))
        {
            s="\""+s+"\"";
        }

如果您使用的是OpenCsv,这应该不是一个问题:它会根据需要自动引用值,即如果您编写的某个值是
some,comment
OpenCsv将实际编写
“some,comment”
(附在qoutes中)。所有标准csv;无需担心。

为什么不使用数据中未出现的分隔符?我们可以使用。但这是评论栏。。可能是他们将使用的任何字符。如果有任何方法可以删除逗号,那么这就更好了。如果逗号不重要,您可以始终使用
string.replace(',','')替换它。
。但是我认为您应该使用像
$$$$$$
这样的分隔符。您是否尝试调用writer.setUseTextQualifier(true)?我使用的是opencsv库如果需要,库将自动执行此操作。