欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java,

来源: javaer 分享于  点击 48691 次 点评:233

java,


从服务器浏览文件或下载文件

 

 

public void getOutFile(@PathVariable("type")String type,HttpServletRequest request, HttpServletResponse response) throws Exception {

        File f = new File(path);

        if (!f.exists()) {

            response.sendError(404, "File not found!");

            return;

        }

        BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));

        byte[] buf = new byte[1024];

        int len = 0;

 

        response.reset(); // 非常重要

        if (type.equals("online")) { // 在线打开方式

            URL u = new URL("file:///" + path);

            response.setContentType(u.openConnection().getContentType());

            response.setHeader("Content-Disposition", "inline; filename=" + f.getName());

            // 文件名应该编码成UTF-8

        } else { // 纯下载方式

            response.setContentType("application/x-msdownload");

            response.setHeader("Content-Disposition", "attachment; filename=" + f.getName());

        }

        OutputStream out = response.getOutputStream();

        while ((len = br.read(buf)) > 0)

            out.write(buf, 0, len);

        br.close();

        out.close();

    }

相关文章

    暂无相关文章
相关栏目:

用户点评