byte[]和InputStream的相互转换

Posted jeremy1888

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了byte[]和InputStream的相互转换相关的知识,希望对你有一定的参考价值。

1:byte[]转换为InputStream 
InputStream sbs = new ByteArrayInputStream(byte[] buf); 

2:InputStream转换为InputStreambyte[] 
ByteArrayOutputStream swapStream = new ByteArrayOutputStream(); 
byte[] buff = new byte[100]; //buff用于存放循环读取的临时数据 
int rc = 0; 
while ((rc = inStream.read(buff, 0, 100)) > 0) { 
swapStream.write(buff, 0, rc); 

byte[] in_b = swapStream.toByteArray(); //in_b为转换之后的结果 

 1 import java.io.ByteArrayInputStream;  
 2 import java.io.ByteArrayOutputStream;  
 3 import java.io.IOException;  
 4 import java.io.InputStream;  
 5   
 6 public class ByteToInputStream {  
 7   
 8     public static final InputStream byte2Input(byte[] buf) {  
 9         return new ByteArrayInputStream(buf);  
10     }  
11   
12     public static final byte[] input2byte(InputStream inStream)  
13             throws IOException {  
14         ByteArrayOutputStream swapStream = new ByteArrayOutputStream();  
15         byte[] buff = new byte[100];  
16         int rc = 0;  
17         while ((rc = inStream.read(buff, 0, 100)) > 0) {  
18             swapStream.write(buff, 0, rc);  
19         }  
20         byte[] in2b = swapStream.toByteArray();  
21         return in2b;  
22     }  
23   
24 }  

 

以上是关于byte[]和InputStream的相互转换的主要内容,如果未能解决你的问题,请参考以下文章

inputStreamFileByteString等等之间的相互转换

Java类型相互转换byte[]类型,blob类型

String,InputStream相互转换

如何将 byte[] 转换为 InputStream? [复制]

2022-06-13:golang中,[]byte和结构体如何相互转换?

将 InputStream 转换为 byte[] 的最有效方法? [复制]