【发布时间】:2014-04-08 06:06:13
【问题描述】:
在我的 servlet 中,我使用 cookie 传递文件路径并下载如下文件
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String b = null;
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
if (cookie.getName().equals("thecookie")) {
b = cookie.getValue();
}
}
}
BufferedReader br = new BufferedReader(new FileReader(b+"/logs.txt"));
String path = br.readLine();
br.close();
File file = new File(path+"/Results.xlsx");
FileInputStream fileIn = new FileInputStream(file);
ServletOutputStream out = response.getOutputStream();
byte[] outputByte = new byte[4096];
//copy binary contect to output stream
while(fileIn.read(outputByte, 0, 4096) != -1)
{
out.write(outputByte, 0, 4096);
}
fileIn.close();
out.flush();
out.close();
}
一切正常,文件正在下载,但我想下载Results.xlsx,正在下载的文件是download.zip,这个download.zip与我的Results.xlsx文件大小相同,但没有下载用excel打开。
我该怎么做??
【问题讨论】:
-
你不使用 Java 7 吗?