importjava.io.ByteArrayOutputStream;// 创建一个ByteArrayOutputStream实例ByteArrayOutputStreamoutputStream=newByteArrayOutputStream(); 1. 2. 3. 4. 将数据写入OutputStream // 将字符串数据写入OutputStreamStringdata="Hello, OutputStream to InputStream!";try{outputStream.write(data.getBytes());// 将...
importjava.io.*;publicclassStreamConverter{publicstaticvoidmain(String[]args)throwsIOException{ByteArrayOutputStreamoutputStream=newByteArrayOutputStream();outputStream.write("Hello, World!".getBytes());// 转换为InputStreamByteArrayInputStreaminputStream=newByteArrayInputStream(outputStream.toByteArray());...
import java.io.ByteArrayInputStream; import java.io.InputStream; // 将 ByteArrayOutputStream 中的数据转换为字节数组 byte[] byteArray = byteArrayOutputStream.toByteArray(); // 使用字节数组创建 ByteArrayInputStream InputStream byteArrayInputStream = new ByteArrayInputStream(byteArray); // 现在,...
方法一:使用字节数组缓存数据 最简单的方法是用字节数组缓存数据。代码 1 2 3 4 5 ByteArrayOutputStream out =newByteArrayOutputStream(); class1.putDataOnOutputStream(out); class2.processDataFromInputStream( newByteArrayInputStream(out.toByteArray()) ); 于是,OutputStream就被转换为InputStream了。 方...
使用ByteArrayStream类进行转换 第二种方法是使用ByteArrayStream进行转换,这种方法会将写出的文件保存在内存中,然后被工具类读取,伪代码如下: ByteArrayOutputStreambaos=newByteArrayOutputStream();// 写入wordObj.write(baos);ByteArrayInputStreambais=newByteArrayInputStream(baos.toByteArray());// 读取UtilB.re...
IOUtils.copyLarge(InputStream, OutputStream) 或者如果你只是想复制一个文件: FileUtils.copyFile(inFile,outFile); 如果您不想使用 Apache Commons IO,这里是copyLarge方法的作用: public static long copyLarge(InputStream input, OutputStream output) throws IOException ...
new ByteArrayInputStream(out.toByteArray()) ); 于是,OutputStream就被转换为InputStream了。 方法二:使用管道 第一种方法的问题是你必须有足够的内存缓存所有数据。你可以使用文件系统缓存更多数据,但无论如何可处理数据的大小还是受到限制。 解决方法是创建一个线程产生数据到PipedOutputStream。当前线程可从中读取...
class1.putDataOnOutputStream(out); class2.processDataFromInputStream( new ByteArrayInputStream(out.toByteArray()) ); 于是,OutputStream就被转换为InputStream了。 方法二:使用管道 第一种方法的问题是你必须有足够的内存缓存所有数据。你可以使用文件系统缓存更多数据,但无论如何可处理数据的大小还是受到限制。
class2.processDataFromInputStream( new ByteArrayInputStream(out.toByteArray()) ); 于是,OutputStream就被转换为InputStream了。 方法二:使用管道 第一种方法的问题是你必须有足够的内存缓存所有数据。你可以使用文件系统缓存更多数据,但无论如何可处理数据的大小还是受到限制。
使用Java将OutputStream转换为InputStream 在Java中,OutputStream和InputStream分别用于输出和输入数据。假如我们在某个场景下需要将数据从一个流(OutputStream)转换为另一个流(InputStream),这看起来可能会有些棘手,但只要掌握了方法,实际上并不复杂。本篇文章将为你详细讲解如何在Java中实现这一转化过程,从而帮助你理...