io流求助
HttpServletRequest请求的时候,如何把一个流输出至访问的请求地址,如:我要像访问的地址写一个文件,怎样写它的路径
[解决办法]
是想把文件从页面传到服务器呢,还是想在后台服务器跳转过程中实现文件传递?
[解决办法]
public void download(HttpServletRequest request,
HttpServletResponse response) throws Exception {
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
request.setCharacterEncoding("UTF-8");
response.setContentType("application/x-msdownload;");
File file = new File("xxxxx");//获取你要输出的文件
String fileName = file.getName();
response.setHeader("Content-disposition", "attachment; filename="
+ fileName);
response.setHeader("Content-Length", String.valueOf(file.length()));
bis = new BufferedInputStream(new FileInputStream(file));
bos = new BufferedOutputStream(response.getOutputStream());
byte[] buff = new byte[1024];
int bytesRead;
while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) {
bos.write(buff, 0, bytesRead);
}
} catch (Exception e) {
logger.error("读取需下载的文件失败", e);
throw new IllegalAccessError("读取需下载的文件失败");
} finally {
try{
bis.close();
bos.close();
}catch(IOException e){
e.printStack();
}finally{
bis = null;
bos = null;
}
}
}
[解决办法]
http://blog.csdn.net/aidayei/article/details/6448711
[解决办法]
用POI导出文件到客户端的思路是
1、通过POI在服务端生成文件
2、通过Response导出生成的文件
3、在服务端删除生成的问题(可选)
[解决办法]
直接在HttpServletResponse上写就可以了
[解决办法]
那你这不就是下载文件吗?就是用servlet实现文件下载嘛
[解决办法]
默认不就是下载到本地的嘛,难道还下载到其他地方不成?