JSP页面导出CSV查询结果

这个很多网站都有,找了一个,感觉好用:

StringqueryResult = ...;
response.setContentType(
" application/csv " );
response.setHeader(
" Content-Disposition " , " inline;filename="result.csv" " );
PrintWriterout
= new PrintWriter( new OutputStreamWriter(
response.getOutputStream(),
" UTF-8 " ));
out.print(queryResult);
out.close();

但我自己在做的时候遇到一个实际问题,因为我要导出的结果中有时间,它的格式是这样的2007-09-01 07:00:00,用notepad打开的话肯定没问题,但如果用excel打开就有点问题了,时间段会变成####,因为excel的时间格式是01/09/2007 07:00:00。所以要在导出前处理下这个string。

private static final DateFormatformatVLS = new SimpleDateFormat( " yyyy-MM-ddHH:mm " );
private static final DateFormatformatCSV = new SimpleDateFormat( " dd/MM/yyyyHH:mm " );

private StringconvertTimeForCSV(Stringinput) throws VLSException ... {
try...{
returnformatCSV.format(formatVLS.parse(input));
}
catch(ParseExceptione)...{
//TODOAuto-generatedcatchblock
thrownewVLSException(VLSConstants.ERROR_FORMAT);
}

}

你可能感兴趣的:(jsp,Excel)