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 }  
时间: 2025-01-03 16:53:50

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 =

Android Bitmap与DrawAble与byte[]与InputStream之间的转换工具类【转】

package com.soai.imdemo; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.grap

C#中图片BYTE[]和base64string的相互转换

概述 本篇主要讲解c#中图片BYTE[]和base64string的相互转换 编码规则 Base64编码的思想是是采用64个基本的ASCII码字符对数据进行重新编码.它将需要编码的数据拆分成字节 数组.以3个字节为一组.按顺序排列24 位数据,再把这24位数据分成4组,即每组6位.再在每组的的最高位前 补两个0凑足一个字节.这样就把一个3字节为一组的数据重新编码成了4个字节.当所要编码的数据的字节数不是 3的整倍数,也就是说在分组时最后一组不够3个字节.这时在最后一组填充1到2个0字节.并在最后

第七周作业——java 中 byte 和bit 的相互转换

这周信息安全课做了DES加密算法的实验,需要对bit操作.对此进行一下总结: 1 byte = 8 bit java 中没bit 的数据类型 , 因此,可将每位的数值(1,0)存在byte[]数组中. 要把每位提取出来,需要把它 右移至右边第一位 ,在和1 (2进制为000000001)进行与运算 ,这样除了需要的bit, 其他都为0 .其2进制(1,0),正好为数字1,0: 具体代码如下: public static byte[] ByteToBit (byte a) { byte[] tem

android那些事之Bitmap、InputStream、Drawable、byte[]、Base64之间的转换关系

1 // 将Bitmap转换成InputStream(压缩率quality.100表示不压缩.10表示压缩90%) 2 public InputStream Bitmap2InputStream(Bitmap bm, int quality) { 3 ByteArrayOutputStream baos = new ByteArrayOutputStream(); 4 bm.compress(Bitmap.CompressFormat.PNG, quality, baos); 5 InputSt

java 中 byte[]、File、InputStream 互相转换

1.将File.FileInputStream 转换为byte数组: File file = new File("test.txt"); InputStream input = new FileInputStream(file); byte[] byt = new byte[input.available()]; input.read(byt); 2.将byte数组转换为InputStream: byte[] byt = new byte[1024]; InputStream inpu

[技巧篇]19.InputStream与String,Byte之间互转[转载]

import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; /** * @see InputStream转化为String String 转换为InputStream InputStream 转化为byte数组 byte转化为InputStream byte转化为String * @author

Android中Bitmap,byte[],Drawable,InputStream相互转化工具类

在新浪看到一些数据流的转化,分享一下: 1.将byte[]转换成InputStream   public InputStream Byte2InputStream(byte[] b) { ByteArrayInputStream bais = new ByteArrayInputStream(b); return bais; } 2. 将InputStream转换成byte[]   两种方式: 一. public static final byte[] InputStream2Bytes(Inp

InputStream与String,Byte之间互转

import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; /** * * @author Andy.Chen * @mail [email protected] * */ public class InputStreamUtils { final static int BUFFER_SIZE =