javaWeb的文件下载的两种方式

1是a标签下载:

       直接在jsp或html文件中写:

 直接点击超链接就可以下载了。如果是txt文件则不会下载,会直接打开,如果是zip则会提示下载

 

2,第二种方式就是以请求的方式:(servlet或者action的方式)

      客户端发送url:xxx.action或者servlet

如果是action的话则需要通过out = ServletActionContext.getResponse.getOutputStream();  使用out.write();把需要下载的东西写入到输出流中即可。

但是文件下载需要注意(一个流,两个头)

  设置文件的类型:
            setContextType("");
            在Tomcat里面的conf的web.xml里面有每一种文件类型的mime类型怎么写
            根据文件名获得mime类型。
                ServletActionContext.getServletContext.getMimeType(String fileName);
        然后设置:告诉浏览器是需要下载的
            ServletActionContext.getResponse.setHeader("Content-Disposition","attachment;filename="+filename);
        中文file会出现中文乱码:
            通过FileUtils的工具类。对filename进行编码。
                第一个对象是filename,第二个对象就是头信息的User-Agent对应的值
                    ServletActionContext.getRequest.getHeader("User-Agent");

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值