zoukankan      html  css  js  c++  java
  • Struts1.x下载

    参数是文件名

    package com.platform_easyuiSSH.struts1.action;

    import java.io.FileInputStream;
    import java.io.InputStream;
    import java.io.OutputStream;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;

    import com.platform_easyuiSSH.struts1.action.form.DownForm;

    public class DownAction extends Action{
    @Override
    public ActionForward execute(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws Exception {
    DownForm dform = (DownForm) form;
    String fileName = dform.getFileName();
    //清除页面空白行
    response.reset();
    //设置相应对象为下载程序
    response.setContentType("application/x-msdownload");
    //设置下载框中的文件名,java相应都是ISO-8859-1字符编码,IE有问题,暂时没处理
    response.setHeader("Content-Disposition", "attachment; filename="+new String(fileName.getBytes(), "ISO-8859-1"));
    //开始下载操作
    OutputStream os = response.getOutputStream();

    String realPath = request.getSession().getServletContext().getRealPath("/upload");
    InputStream is = new FileInputStream(realPath+"\"+fileName);

    byte[] b = new byte[1024];
    while(true){
    int len = is.read(b);
    if( len == -1){
    break;
    }
    os.write(b, 0, len);
    }
    os.close();
    is.close();
    return null;
    }
    }

  • 相关阅读:
    C/C++打印堆栈信息
    adb shell input keyevent值所对应的字符
    Nautilus-Share-Message: Called "net usershare info" but it failed: Failed to
    ubuntu 安装lua错误
    ubuntu 16.04 安装jdk9错误
    国家统计信息查询网址
    Spring ApplicationListener配合-D实现参数初始化
    Feign Form表单POST提交
    window下绝对路径
    SpringBoot中使用配置文件
  • 原文地址:https://www.cnblogs.com/lbblog/p/4705817.html
Copyright © 2011-2022 走看看