复制代码
1
2
3
4
5
6
7
8
9
10<dependency> <groupId>net.sourceforge.javacsv</groupId> <artifactId>javacsv</artifactId> <version>2.0</version> </dependency>
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54@Test public void write(){ try { // 创建CSV写对象 List<Student> ls=new ArrayList<Student>(); for (int i = 0; i <1000000; i++) { Student s=new Student(); s.setName("小帅"+i); s.setAge(i); s.setScore("100"+i); s.setSex("男"+i); ls.add(s); } //写入临时文件 File tempFile = File.createTempFile("vehicle", ".csv"); CsvWriter csvWriter = new CsvWriter(tempFile.getCanonicalPath(),',', Charset.forName("UTF-8")); // 写表头 long s= System.currentTimeMillis(); System.err.println(); String[] headers = {"姓名","年龄","编号","性别"}; csvWriter.writeRecord(headers); for (Student stu : ls) { csvWriter.write(stu.getName()); csvWriter.write(stu.getAge()+""); csvWriter.write(stu.getScore()); csvWriter.write(stu.getSex()); csvWriter.endRecord(); } csvWriter.close(); long e=System.currentTimeMillis(); System.err.println(e-s);; /** * 写入csv结束,写出流 */ java.io.OutputStream out = getResponse.getOutputStream(); byte[] b = new byte[10240]; java.io.File fileLoad = new java.io.File(tempFile.getCanonicalPath()); getResponse.reset(); getResponse.setContentType("application/csv"); getResponse.setHeader("content-disposition", "attachment; filename=vehicleModel.csv"); long fileLength = fileLoad.length(); String length1 = String.valueOf(fileLength); getResponse.setHeader("Content_Length", length1); java.io.FileInputStream in = new java.io.FileInputStream(fileLoad); int n; while ((n = in.read(b)) != -1) { out.write(b, 0, n); //每次写入out1024字节 } in.close(); out.close(); } catch (IOException e) { e.printStackTrace(); } }
网上找太多,眼逗看累了。自己写个简单的
参考文章:http://blog.csdn.net/loongshawn/article/details/53423121
ps:version我本地只能用2.0;以流的形式写出游览器不用做操作文件会直接下载;
2:因为csvWriter不提供类似Poi的写入流 workbook.write(out);故在csv写入数据完之后,要手动把文件写入流;
最后
以上就是顺利小熊猫最近收集整理的关于java导出文件之Excel(CSV)下并以流形式输出的全部内容,更多相关java导出文件之Excel(CSV)下并以流形式输出内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复