Java——IO流(字节数组输入输出流)_4

1、字节数组输入流

package IOTest_4;

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
/**
 *  字节数组输入流
 * @author Root
 *
 */
public class ByteArrayInputStreamTest_1 {
	public static void main(String[] args) {
		 byte[] src = "abcdefg".getBytes();			//创建源
		 InputStream is = null;
		 is = new ByteArrayInputStream(src);		//选择流
		 byte[] b = new byte[5];					//缓冲器
		 int len = -1;								//记录字节长度的变量
		 try {
			while((len=is.read(b))!=-1) {			//从输入流读取一些字节数,并将它们存储到缓冲区b
				 String str = new String(b,0,len);	//字节数组到字符串
				 System.out.println(str);
			 }
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

字节数组输出流

package IOTest_4;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
/**
 * 	字节数组输出流
 * @author Root
 *	toByteArray():内部将数据保存在内存中,所以需要通过这个方法,获取一个字节数组
 */
public class ByteArrayOutputStreamTest_1 {
	public static void main(String[] args) {
		 byte[] data = null;		//创建源
		 ByteArrayOutputStream baos = new ByteArrayOutputStream();	//选择流
		 String str = "abcdefghijklmnopqrstuvwxyz";
		 byte[] b = str.getBytes();		//把要打印的字符串转为字节数组
		 try {
			baos.write(b,0,b.length);			//写出字节数组
			baos.flush();				//强制刷新输出流
			data = baos.toByteArray();	//获取数据
			System.out.println(new String(data,0,data.length));		//打印结果
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		 
	}
}

你可能感兴趣的:(JAVA)