|
本帖最后由 小二 于 2018-11-16 13:44 编辑
我是直接在浏览器地址栏中调用的这个方法;response的的输出被重复调用导致资源占用,请问x5后台的输出流怎么关闭?找不到该对象- HttpServletResponse response=(HttpServletResponse) context.get(ActionContext.RESPONSE);
- downloadLocal(response);
- // 下载本地文件
- String fileName = "photo.zip".toString(); // 文件的默认保存名
- // 读到流中
- InputStream inStream = new FileInputStream("F:/mytest03.zip");// 文件的存放路径
- // 设置输出的格式
- response.reset();
- response.setContentType("bin");
- response.addHeader("Content-Disposition", "attachment; filename="" + fileName + """);
- // 循环取出流中的数据
- byte[] b = new byte[100];
- int len;
- try {
- ServletOutputStream sos = response.getOutputStream();
- while ((len = inStream.read(b)) > 0){
- sos.write(b, 0, len);
- }
- inStream.close();
- sos.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
复制代码
|
|