首页 > 代码库 > byte[]和InputStream的相互转换

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的相互转换