博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
从BufferedImage到InputStream,实现绘图后进行下载(生成二维码图片并下载)
阅读量:5355 次
发布时间:2019-06-15

本文共 1215 字,大约阅读时间需要 4 分钟。

@SuppressWarnings("resource")public void download() throws Exception{    String filename = "qrcode.png";    String content = "content";    BufferedImage image = QRcodeUtils.encode(content, size);        //BufferedImage 转 InputStream    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();    ImageOutputStream imageOutput = ImageIO.createImageOutputStream(byteArrayOutputStream);    ImageIO.write(image, "png", imageOutput);    InputStream inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());    long length = imageOutput.length();        //设置response    HttpServletResponse response = this.getResponse();    response.setContentType("application/x-msdownload");    response.setContentLength((int)length);    response.setHeader("Content-Disposition","attachment;filename="+new String(filename.getBytes("gbk"),"iso-8859-1"));        //输出流    byte[] bytes = new byte[1024];    OutputStream outputStream = response.getOutputStream();    long count = 0;    while(count < length){        int len = inputStream.read(bytes, 0, 1024);        count +=len;        outputStream.write(bytes, 0, len);    }    outputStream.flush();}

 

转载于:https://www.cnblogs.com/rubekid/p/3931044.html

你可能感兴趣的文章
客户端连接linux虚拟机集群报错
查看>>
linux下部署一个JavaEE项目的简单步骤
查看>>
hash储存机制
查看>>
[Android学习系列16]Android把php输出的json加载到listview
查看>>
20145205 《信息安全系统设计基础》第14周学习总结
查看>>
6)添加一个窗口的图标
查看>>
POJ - 1422 Air Raid 二分图最大匹配
查看>>
Road Map
查看>>
正则替换中的一个Bug
查看>>
HI3531uboot开机画面 分类: arm-linux-Ubunt...
查看>>
制作U盘启动CDLinux 分类: 生活百科 ...
查看>>
strcpy函数里的小九九
查看>>
搭建ssm过程中遇到的问题集
查看>>
OpenLayers绘制图形
查看>>
tp5集合h5 wap和公众号支付
查看>>
Flutter学习笔记(一)
查看>>
iOS10 国行iPhone联网权限问题处理
查看>>
洛谷 P1991 无线通讯网
查看>>
Codeforces Round #178 (Div. 2) B. Shaass and Bookshelf 【动态规划】0-1背包
查看>>
SparkStreaming 源码分析
查看>>