java实现csv下载
时间: 2023-07-07 22:33:21 浏览: 48
要实现 CSV 文件的下载,你可以使用 Java Servlet 的 HttpServletResponse 对象将 CSV 内容以流的形式写入 HTTP 响应。以下是一个简单的实现示例:
```java
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 设置响应内容类型
response.setContentType("text/csv");
// 设置响应头,指示浏览器将响应视为下载文件
response.setHeader("Content-Disposition", "attachment; filename=\"example.csv\"");
// 构造 CSV 文件内容
StringBuilder csvContent = new StringBuilder();
csvContent.append("Name, Age\n");
csvContent.append("John, 30\n");
csvContent.append("Mary, 25\n");
csvContent.append("Tom, 40\n");
// 将 CSV 文件内容写入响应流中
PrintWriter writer = response.getWriter();
writer.write(csvContent.toString());
writer.flush();
writer.close();
}
```
在上面的示例中,我们首先设置响应内容类型为 "text/csv",然后设置响应头 Content-Disposition,该头指定将响应视为下载文件,并指定下载文件名为 example.csv。接下来,我们构造了一个简单的 CSV 文件内容,并将其写入响应流中。最后,我们关闭了响应流,确保数据已被发送到客户端。
注意,上面的示例中使用的是 Servlet,你需要将其部署到支持 Servlet 的 Web 容器中,例如 Tomcat。如果你使用的是 Spring MVC 或其他框架,可以使用相应的响应对象实现相同的功能。