文档章节

InputStream与String,Byte之间互转

丁佳辉
 丁佳辉
发布于 2016/07/01 15:58
字数 271
阅读 6
收藏 0

/** *

*/ public class InputStreamUtils {

final static int BUFFER_SIZE = 4096;

/**
 * 将InputStream转换成String
 * @param in InputStream
 * @return String
 * @throws Exception
 * 
 */
public static String InputStreamTOString(InputStream in) throws Exception{
	
	ByteArrayOutputStream outStream = new ByteArrayOutputStream();
	byte[] data = new byte[BUFFER_SIZE];
	int count = -1;
	while((count = in.read(data,0,BUFFER_SIZE)) != -1)
		outStream.write(data, 0, count);
	
	data = null;
	return new String(outStream.toByteArray(),"ISO-8859-1");
}

/**
 * 将InputStream转换成某种字符编码的String
 * @param in
 * @param encoding
 * @return
 * @throws Exception
 */
     public static String InputStreamTOString(InputStream in,String encoding) throws Exception{
	
	ByteArrayOutputStream outStream = new ByteArrayOutputStream();
	byte[] data = new byte[BUFFER_SIZE];
	int count = -1;
	while((count = in.read(data,0,BUFFER_SIZE)) != -1)
		outStream.write(data, 0, count);
	
	data = null;
	return new String(outStream.toByteArray(),"ISO-8859-1");
}

/**
 * 将String转换成InputStream
 * @param in
 * @return
 * @throws Exception
 */
public static InputStream StringTOInputStream(String in) throws Exception{
	
	ByteArrayInputStream is = new ByteArrayInputStream(in.getBytes("ISO-8859-1"));
	return is;
}

/**
 * 将InputStream转换成byte数组
 * @param in InputStream
 * @return byte[]
 * @throws IOException
 */
public static byte[] InputStreamTOByte(InputStream in) throws IOException{
	
	ByteArrayOutputStream outStream = new ByteArrayOutputStream();
	byte[] data = new byte[BUFFER_SIZE];
	int count = -1;
	while((count = in.read(data,0,BUFFER_SIZE)) != -1)
		outStream.write(data, 0, count);
	
	data = null;
	return outStream.toByteArray();
}

/**
 * 将byte数组转换成InputStream
 * @param in
 * @return
 * @throws Exception
 */
public static InputStream byteTOInputStream(byte[] in) throws Exception{
	
	ByteArrayInputStream is = new ByteArrayInputStream(in);
	return is;
}

/**
 * 将byte数组转换成String
 * @param in
 * @return
 * @throws Exception
 */
public static String byteTOString(byte[] in) throws Exception{
	
	InputStream is = byteTOInputStream(in);
	return InputStreamTOString(is);
}

}

© 著作权归作者所有

丁佳辉
粉丝 20
博文 446
码字总数 203356
作品 0
浦东
程序员
私信 提问
Clob,Blob,InputStream,byte 互转

今天用java读取oracle里的Clob字段。本来要转成xml文件的,一顿转换。现在总结一下这个流的互相转换方法。 以下内容来自:http://hi.baidu.com/webidea/item/8965fd99de1034dd1e4271e1 一、b...

王小明123
2012/10/06
8.1K
1
基于hessian的文件传输 (转)

基于hessian的文件传输 通常文件传输建议还是通过 ftp ,只有当 ftp 满足不了需求时,才考虑 hessian 的传输方案。 Hessian 传文件的应用场景有比如两台需要传输文件的服务器之间的网络情况限...

liangyx
2012/07/20
3.4K
1
Android Bitmap与DrawAble与byte[]与InputStream之间的转换工具类【转】

[java] view plaincopyprint? package com.soai.imdemo; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStream; import android.graphi......

guozhendan
2018/06/26
0
0
Java中图片与base64位编码互转

import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import sun.misc.BASE64Decod......

JTA的阿呆
2016/08/24
74
0
Android常用数据类型转换

String转int、float、double、byte[]、bitmap Int i = Integer.parseInt(str); Float f = Float.parseFloat(str); Double d = Double.parseDouble(str); //将16进制字符串转byte数组 public......

xi阳
2018/07/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java数据类型

基本类型: 整型:Byte,short,int,long 浮点型:float,double 字符型:char 布尔型:boolean 引用类型: 类类型: 接口类型: 数组类型: Byte 1字节 八位 -128 -------- 127 short 2字节...

audience_1
34分钟前
5
0
太全了|万字详解Docker架构原理、功能及使用

一、简介 1、了解Docker的前生LXC LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpa...

Java技术剑
35分钟前
8
0
Wifiphisher —— 非常非常非常流氓的 WIFI 网络钓鱼框架

编者注:这是一个非常流氓的 WIFI 网络钓鱼工具,甚至可能是非法的工具(取决于你的使用场景)。在没有事先获得许可的情况下使用 Wifiphisher 攻击基础网络设施将被视为非法活动。使用时请遵...

红薯
今天
46
1
MongoDB 4 on CentOS 7安装指南

本教程为CentOS x86_64 7.x操作系统下,MongoDB Community x86_64 4.2(GA)安装指南。 安装方式一:yum repo在线安装 [此方式较为简单,官方推荐] Step1:新建MongDB社区版Yum镜像源。 # vim ...

王焱君
今天
7
0
go-micro 入门教程1.搭建 go-micro环境

微服务的本质是让专业的人做专业的事情,做出更好的东西。 golang具备高并发,静态编译等特性,在性能、安全等方面具备非常大的优势。go-micro是基于golang的微服务编程框架,go-micro操作简单...

非正式解决方案
今天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部