InputStream与String,Byte之间互转

原创 2011年10月20日 23:18:50

              本文将介绍InputStream与String,Byte之间的相互转换。以代码来说明:

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;

/**
 * 
 * @author Andy.Chen
 * @mail Chenjunjun.ZJ@gmail.com
 *
 */
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);
    }

}


数据流DataInputStream和内存流ByteArrayInputStream

数据输入流和数据输出流 提供了各种方法方便数据的输入和输出public static void main(String[] args) throws IOException { ...
  • melissa_heixiu
  • melissa_heixiu
  • 2016-08-23 17:40:59
  • 1578

将输入流InputStream转换为String

public static String convertStreamToString(InputStream is) { /* * To conve...
  • wwwyuanliang10000
  • wwwyuanliang10000
  • 2014-09-22 12:03:03
  • 1022

关于Ext Js 4的inputStream形式 ftp 文件下载(ajax方式)

做文件下载做了好久,一开始的是在项目目录下的上传
  • kun525331194
  • kun525331194
  • 2014-09-12 12:48:47
  • 1937

android中String与InputStream之间的相互转换方式

在android中我们涉及到网络访问以及文件访问时,难免需要写String与InputStream之间的相互转换的相关代码,这里我写了几种方式供参考,主体有两种实现形式: 一:纯手戳代码: 1...
  • you__are_my_sunshine
  • you__are_my_sunshine
  • 2016-08-07 11:52:21
  • 4267

Android函数工具(读取InputStream到String字符串)

说明:传入一个InputStream 返回一个String字符串,一般用来读取网络数据public static String readStreamToString(InputStream input...
  • MrYan1211
  • MrYan1211
  • 2016-08-02 09:59:47
  • 1512

Android将InputStream转换为String和byte[]

为什要将InputStream转换为String?因为要实现加密功能,加密函数的输入都是String。public static String inputStream2String (InputStr...
  • randyjiawenjie
  • randyjiawenjie
  • 2011-07-07 09:31:28
  • 9589

String与InputStream相互转换

1.String to InputStreamString str = "String与InputStream相互转换";InputStream   in_nocode   =   new   Byt...
  • hanqunfeng
  • hanqunfeng
  • 2009-07-20 18:48:00
  • 168494

Java中InputStream和String之间的转换方法

在Java中InputStream和String之间的转化十分普遍,本文主要是总结一下转换的各种方法,包括JDK原生提供的,还有一些外部依赖提供的。...
  • lmy86263
  • lmy86263
  • 2017-03-05 22:09:34
  • 3266

解析网络数据时,String与InputStream互转的几种方法

/**      * 利用BufferedReader实现Inputstream转换成String       *       * @param in      * @return String   ...
  • LAMP_zy
  • LAMP_zy
  • 2015-11-27 10:27:34
  • 1954
收藏助手
不良信息举报
您举报文章:InputStream与String,Byte之间互转
举报原因:
原因补充:

(最多只允许输入30个字)