ByteArrayInputStream / ByteArrayOutputStream的实际用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ByteArrayInputStream / ByteArrayOutputStream的实际用法相关的知识,希望对你有一定的参考价值。

使用ByteArrayInputStream和/或ByteArrayOutputStream的一些实际领域是什么?例子也很受欢迎。

如果搜索示例,通常会发现:

byte[] buf = { 16, 47, 12 };  
ByteArrayInputStream byt = new ByteArrayInputStream(buf);

它无法帮助人们使用它的地方或原因。我知道在处理图像,ZIP文件或写入ServletOutputStream时会使用它们。

答案

ByteArrayInputStream:每次需要一个InputStream时(通常是因为API将其作为参数),并且您已经将所有数据都存储在内存中,作为字节数组(或任何可以转换为字节数组的数据)。

ByteArrayOutputStream:每次需要OutputStream时(通常是因为API将其输出写入OutputStream)并且您希望将输出存储在内存中,而不是存储在文件中或网络上。

以上是关于ByteArrayInputStream / ByteArrayOutputStream的实际用法的主要内容,如果未能解决你的问题,请参考以下文章

将 ByteArrayInputStream 的内容转换为字符串

JDK源码:ByteArrayInputStream

内存流(字节数组流)ByteArrayInputStream

Java 输入流ByteArrayInputStream

ByteArrayInputStream&ByteArrayOutputStream

ByteArrayInputStream/ByteArrayOutputStream 学习