CSVwriter writerall用java更改结果集的日期格式

时间:2015-01-06 13:25:20

标签: java opencsv

我使用csvwriter(opencsv)将sql server中的表导出为CSV文件,在csv文件中更改日期格式。 sql server中的实际日期格式为YYYY-MM-DD HH:MI:SS但它转换为2014年9月19日09:13:00。我正在使用Ubuntu操作系统。

3 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,但是看起来您可以设置CSVWriter将使用的格式:

CSVWriter csvWriter = ..
ResultSetHelperService resultSetHelperService= new ResultSetHelperService();
resultSetHelperService.setDateFormat("yyyy-MM-dd");
resultSetHelperService.setDateTimeFormat("yyyy-MM-dd HH:MI:SS");
csvWriter.setResultService(resultSetHelperService);

答案 1 :(得分:0)

在您的查询中,使得从sql查询返回的日期采用您喜欢的格式。例如:

 SELECT lastName, DATE_FORMAT(someDate,'%Y-%m-%d %T') AS columnName from mytable

这种方式当它返回到CSV编写器时,它将采用您选择的格式。然后,您可以使用查询循环并写入。

        String[] columns = {"lastName","columnName"};

        writer.writeNext(columns);

        while(rs.next()){

            String[] values = {
                    rs.getString("lastName"),
                    rs.getString("columnName")
                    };

             writer.writeNext(values);
        }

答案 2 :(得分:0)

将查询格式化为:

select ''||to_date(your_date_field, 'yyyy-mm-dd') from your_table 

将空字符串添加到选定的日期字段会使CSVWriter将其视为字符串并按原样写入。