什么是字节缓冲流?

  1. BufferInputStream:创建一个内部缓冲区数组,当从内读取和
    跳过字节时,内部缓冲区根据需要从包含的输入流重新填充,一次多个字节。
  2. BufferOutputStream:缓冲输出流。程序向底层输出流写字节,不必写每一个字节而导致底层系统的调用。
    构造方法:
    BufferInputStream(InputStream in):字节缓冲输入流
    BufferOutputStream(OutputStream out):字节缓冲输出流
    为什么构造方法用字节流,而不是文件或路径呢?
    字节缓冲流:提供的是缓冲区,读写数据还得靠字节流对象。
    练习代码:
package File_Demo;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class File_demo9 {

	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		//创建字节缓冲流
		BufferedOutputStream outFile = new BufferedOutputStream(new FileOutputStream("D:\\JAVA\\java.txt"));
		outFile.write("hhhhh\r\n".getBytes());
		outFile.close();
	
		BufferedInputStream inFile = new BufferedInputStream(new FileInputStream("D:\\JAVA\\java.txt"));
		//读取一个字节
//		int by;
//		while((by = inFile.read())!= -1) {
//			System.out.println((char)by);
//		}
//		inFile.close();

		//读取字节数组
		int len;
		byte[] b = new byte[1024];
		while(((len = inFile.read(b))!=-1)) {
			System.out.println(new String(b,0,len));
		}
		inFile.close();
	}

}

你可能感兴趣的:(文双的漫漫Java路,java)