InputStream与String/byte[]相互转换
public class InputStreamUtils {
private static final String CHARSET_NAME = "UTF-8";
private static final int BUFFER_SIZE = 1024;
/**
* 将字符串转换成InputStream
* @param string
* @return
* @throws UnsupportedEncodingException
*/
public static InputStream string2InputStream(String string) throws UnsupportedEncodingException {
ByteArrayInputStream inputStream = new ByteArrayInputStream(string.getBytes(CHARSET_NAME));
return inputStream;
}
/**
* 将InputStream转换成指定编码的String
* @param is
* @return
* @throws Exception
*/
public static String inputStream2String(InputStream is) throws Exception {
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] data = new byte[BUFFER_SIZE];
int len = -1;
while (-1 != (len = is.read(data, 0, BUFFER_SIZE))) {
os.write(data, 0, len);
}
return new String(os.toByteArray(), CHARSET_NAME);
}
/**
* 将byte[]转换成IntputStream
* @param buf
* @return
*/
public static InputStream byte2InputStream(byte[] buf) {
ByteArrayInputStream inputStream = new ByteArrayInputStream(buf);
return inputStream;
}
/**
* 将IntputStream转换成byte[]
* @param is
* @return
* @throws IOException
*/
public static byte[] inputStream2Byte(InputStream is) throws IOException {
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] date = new byte[BUFFER_SIZE];
int len = -1;
while (-1 != (len = is.read(date, 0, BUFFER_SIZE))) {
os.write(date, 0, BUFFER_SIZE);
}
return os.toByteArray();
}
}
更多相关文章
- Android handler.obtainMessage()传字符串用法
- Android DrawText字符串的绘制
- 【安卓】关于 Android 默认字体以及对比微软雅黑字体
- 微软发布 mircosft remote desktop for android
- Android连接SQLServer详细教程(数据库+服务器+客户端),并在微软Azur
- Android xliff和字符串资源[Android开发网]
- 专利敲诈——微软对Android痛下杀手的背后
- Android studio 提取文件指定字符串