PM要求在数据库查出数据在浏览器导出为CSV的文件,一接手没多想直接用POI存进HSSFWorkbook对象,最后把文件后缀名弄csv用流直接输出到客户端,三下五除二就搞定了,并且能用正常打开。后来测试发现根本不是那么回事。
其实,csv是逗号分隔的[b]纯文本[/b],而xls是二进制的,显然这种低级错误很让你很悲催。做这个不必想着第三方的jar包(第三方貌似有一个叫OpenCSV的Apache的)去偷懒,说一下思路:把数据写成 Data,Data,Data\n 格式就可以了,即用逗号分隔数据列用转义字符\n换行存储为csv万事ok。
顺手记录成长路上的低级错误,阿门。不要想太复杂,不要偷懒···
其实,csv是逗号分隔的[b]纯文本[/b],而xls是二进制的,显然这种低级错误很让你很悲催。做这个不必想着第三方的jar包(第三方貌似有一个叫OpenCSV的Apache的)去偷懒,说一下思路:把数据写成 Data,Data,Data\n 格式就可以了,即用逗号分隔数据列用转义字符\n换行存储为csv万事ok。
顺手记录成长路上的低级错误,阿门。不要想太复杂,不要偷懒···