首页 > 编程语言 > 详细

spring 后台项目实现文件流转发 思路

时间:2021-07-13 14:51:34      阅读:13      评论:0      收藏:0      [点我收藏+]

1 用工具包模拟请求

这时候注意 拿到InputStream文件流不要转换其他格式,例如string 你在转回来文件就损坏了。 拿到后复制到一个新的文件流,因为老的要关闭连接,流就没了

 InputStream stream = entity.getContent();
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            byte[] buffer = new byte[1024];
            int len;
            while ((len = stream.read(buffer)) > -1) {
                byteArrayOutputStream.write(buffer, 0, len);
            }
            byteArrayOutputStream.flush();
            InputStream newStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());

2 返回前段

在controller层把拿到的input流转化一下  用httpservletresponse 里的outputstream流 接收 前段请求后就会接到值

byte[] buffer = new byte[inputStream.available()];
        inputStream.read(buffer);
        inputStream.close();
        response.reset();



        OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
        toClient.write(buffer);
        toClient.flush();
        toClient.close();

 

spring 后台项目实现文件流转发 思路

原文:https://www.cnblogs.com/funkboy/p/15006103.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!