java 服务器下载删除临时文件 示例代码csv格式
以下是一个示例代码,用于从Java服务器下载并删除CSV格式的临时文件:
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.nio.file.Files;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class DownloadServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private static final String TEMP_DIR = "/path/to/temp/dir"; // 临时文件目录
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String fileName = "example.csv"; // 文件名
File file = new File(TEMP_DIR + "/" + fileName);
if (!file.exists()) {
response.sendError(HttpServletResponse.SC_NOT_FOUND);
return;
}
response.setContentType("text/csv");
response.setHeader("Content-disposition", "attachment; filename=\"" + fileName + "\"");
try (FileInputStream fis = new FileInputStream(file); OutputStream out = response.getOutputStream()) {
byte[] buffer = new byte[4096];
int length;
while ((length = fis.read(buffer)) > 0) {
out.write(buffer, 0, length);
}
} catch (IOException e) {
e.printStackTrace();
}
Files.delete(file.toPath()); // 删除临时文件
}
}
在这个示例中,我们定义了一个DownloadServlet类来处理下载请求。在doGet()方法中,我们首先检查请求的文件是否存在。如果不存在,我们发送HTTP 404错误响应。接下来,我们设置响应的内容类型和头文件,以便将文件作为附件下载。然后,我们使用FileInputStream从文件读取数据,并使用OutputStream将数据写入响应。最后,我们使用Files.delete()方法删除临时文件。
请注意,这只是一个示例代码,并且需要根据您的具体需求进行调整。例如,您可能需要更改临时文件的目录,文件名等
原文地址: https://www.cveoy.top/t/topic/hsQv 著作权归作者所有。请勿转载和采集!