在Servlet中的doGet()方法中

获取FileInputStream对象,new出来,构造参数:String的文件路径

得到文件路径,调用this.getServletContext().getRealPath(“这里是应用根路径”)

调用HttpServletResponse对象的getOutputStream()方法,得到OutputStream对象

正常读取和写入流

输入流可以关闭,输出流不要关闭

此时图片会直接显示出来,并没有出现下载

使用http协议头Content-Disposition:attachment;filename=1.jpg

调用HttpServletResponse对象的setHeader()方法,参数:key,value

此时问题,http协议头里不允许有中文,会出错,编码是iso8859-1

使用url编码方式解决,二进制转十六进制加上个%

调用UrlEncoder.encode()方法,进行url编码,参数:String文本,编码”utf-8”

        response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode("测试.jpg", "utf-8"));FileInputStream file=new FileInputStream(this.getServletContext().getRealPath("1.jpg"));OutputStream os=response.getOutputStream();byte[] b=new byte[1024];int len=0;while((len=file.read(b))!=-1){os.write(b,0,len);}file.close();

[javaEE] response实现图片下载相关推荐

  1. Scrapy学习篇(九)之文件与图片下载

    Media Pipeline Scrapy为下载item中包含的文件(比如在爬取到产品时,同时也想保存对应的图片)提供了一个可重用的 item pipelines . 这些pipeline有些共同的方 ...

  2. iOS imageio nsurlsession 渐进式图片下载

    一.图片常用加载格式分两种 一般线性式 和交错/渐进式 自上而下线性式 先模糊再清晰 就概率上而言线性式使用最多,应为他所占空间普片比渐进式小.而这两种方式对于app端开发人员无需关心,这种图片存储格 ...

  3. Python—实训day4—爬虫案例3:贴吧图片下载

    6 xpath 首先需要安装Google的Chrome浏览器 6.1 安装xpath插件 把 xpath_helper_2_0_2.crx 修改后缀名为 xpath_helper_2_0_2.rar. ...

  4. 网站图片下载 Python

    import threading import requests from lxml import etree as et import os# 请求头 headers = {# 用户代理'User- ...

  5. 爬虫第二弹:千图网电商淘宝模板图片下载

    爬虫第二弹:千图网电商淘宝模板图片下载  一.功能分析: 1.下载千图网电商淘宝的所有模板图片要求是高清版本: 2.并按照主页面将图片归类文件夹.   二.思路分析: 1.利用scrapy构建scra ...

  6. 今日头条街拍图片下载

    获取街拍页面 import requests from beiying import tou# url url = 'http://www.toutiao.com/search_content/?of ...

  7. 图片下载器爬虫 ItemLoader

    思路 http://www.meizitu.com/a/more_1.html 图片下载器爬虫 1.使用到的技术:scrapy ,requests(下载图片),ItemLoader 2.项目的创建:s ...

  8. 自制python图片下载器

    这个代码的原理是用百度作为访问点,脚本根据使用者所输入的关键字去搜索图片,并且下载到使用者所创建的文件夹中. 下面为代码实例: # encoding = 'UTF-8' __author__ = '_ ...

  9. Python爬取京东商品评论和图片下载

    Python爬取京东商品评论和图片下载 代码仅供学习使用,切勿扩散并且频繁爬取网站 贴上代码和注释,方便自己下次看 import requests import time import json im ...

最新文章

  1. java随机产生字母排序_Java生成含字母和数字的6位随机字符串
  2. 我现在是个普通Java程序员,如何才能“更有竞争力”?
  3. Gantt Chart in JavaScript (HTML5) | FusionCharts
  4. 【约束布局】ConstraintLayout 屏障 Barrier 约束 ( 简介 | 屏障适用场景 | 位置说明 | 相关属性 | 可视化操作 | 代码示例 | 总结 )
  5. 【转】一个ASP.NET MVC中ajax调用WebApi返回500 Internal Server Error的调错方法。
  6. python 菜鸟教程字符串反转函数_转自python的菜鸟教程---字符串相关操作
  7. vscode找不到config_vscode中的 jsconfig.json
  8. python problem
  9. HDU - 6273 Master of GCD
  10. 10年经验17张图带你进入gitflow企业项目代码版本管理的最佳实践
  11. 降级降薪去 Amazon ——左耳朵
  12. 嵌入式平台 STM32 libqrencode 移植 二维码生成
  13. Windows7使用Programmer Dvorak键盘布局
  14. 单片机数字钟(调时,调时闪烁,万年历,年月日)超详细解析
  15. python爬去新浪微博_荐爬虫实战 新浪微博爬取 详细分析
  16. 【方案总览】全志方案选型总览与分析-持续更新
  17. HTML5中国象棋游戏(自定义象棋难度)源码下载
  18. 安卓讲课笔记3.4 网格布局
  19. oracle 查询表中字段名称和注释
  20. 12306买票难的一些思考

热门文章

  1. 简明python教程txt-Python新手的数据批量处理教程(TXT文件)
  2. newman api
  3. UVa11389 The Bus Driver Problem(贪心)
  4. 行为模式之State模式
  5. 网络编程学习笔记(recv和send函数)
  6. ActiveReports for .NET 3 破解
  7. 在Web界面中实现Excel数据大量导入的处理方式
  8. activiti 表——介绍
  9. 在IDEA 中用maven创建web项目
  10. 销售必备心灵鸡汤(转)