如何使用Java实现inputstream流的复制
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇文章给大家分享的是有关如何使用Java实现inputstream流的复制的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。获取到一个inputstream后,可能要多次利用
千家信息网最后更新 2025年02月23日如何使用Java实现inputstream流的复制
这篇文章给大家分享的是有关如何使用Java实现inputstream流的复制的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
获取到一个inputstream后,可能要多次利用它进行read的操作。由于流读过一次就不能再读了,而InputStream对象本身不能复制,而且它也没有实现Cloneable接口,所以得想点办法。
实现思路:
1、先把InputStream转化成ByteArrayOutputStream
2、后面要使用InputStream对象时,再从ByteArrayOutputStream转化回来
代码
package com.test;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;public class StreamOperateUtil {public static void main(String[] args) throws FileNotFoundException {InputStream input = new FileInputStream("c:\test.txt");//InputStream input = httpconn.getInputStream(); //这里可以写你获取到的流ByteArrayOutputStream baos = cloneInputStream(input);// 打开两个新的输入流InputStream stream1 = new ByteArrayInputStream(baos.toByteArray());InputStream stream2 = new ByteArrayInputStream(baos.toByteArray());}private static ByteArrayOutputStream cloneInputStream(InputStream input) {try {ByteArrayOutputStream baos = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len;while ((len = input.read(buffer)) > -1) {baos.write(buffer, 0, len);}baos.flush();return baos;}catch (IOException e) {e.printStackTrace();return null;}}}
感谢各位的阅读!关于"如何使用Java实现inputstream流的复制"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
内容
对象
更多
篇文章
不错
实用
两个
代码
办法
思路
接口
文章
看吧
知识
参考
帮助
有关
输入
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
学校网络安全保密协议书
电商直播app软件开发价钱
苹果id老是显示无法连接服务器
兴安盟软件开发及云平台
今日头条数据库招聘
江西服务器防火墙分类
分布式服务器如何改造
柳州泰融信网络技术有限公司
上传文件到腾讯云服务器
女生学软件开发前景如何
最严重服务器瘫痪事件
dota2老是重连协调服务器
高速公路联网系统网络安全管理
台式电脑没有硬盘怎么访问服务器
湖南洣水互联网科技有限公司扣款
相关系数代替数据库消除噪声吗
服务器存储管理总结
update在数据库是什么意思
网络安全重要性危害性
饿了么软件开发者
uuid存在数据库是多少位
集成工程师和软件开发哪个好
宁海嵌入式软件开发项目
软件开发项目转包
koa中连接数据库
网络安全使用安全的电脑
软件开发java方向是啥
拉美新闻数据库
贵州销售软件开发费用
怎样用数据库做分页表