字节输入流 BufferedInputStream

字节输入流 BufferedInputStream

1.BufferedInputStream带有缓冲的意思,普通的读是从 硬盘里面读,而带有缓冲区之后,BufferedInputStream已经提前将数据封装到内存中,内存中操作数据要快,所以它的效率要要非缓冲的要高。
它除了可以使用基类定义的函数外,它还实现了基类的read()函数(无参的)

2.read():从流中读取1个字节的数据,返回结果是一个int,
(如果编码是以一个字节一个字符的,可以尝试转成char,用来查看数据)

3.BufferedInputStream是一种封装别的流以提高效率的
流,所以它的初始化需要一个的InputStream流对象

package mine;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;

/**
 * @author MXL
 *字节输入流 BufferedInputStream
 */

/*
 * 1.BufferedInputStream带有缓冲的意思,普通的读是从硬盘里面读,而带有缓冲区之后,
 *  BufferedInputStream已经提前将数据封装到内存中,内存中操作数据要快,所以它的效率要要非
 *  缓冲的要高。它除了可以使用基类定义的函数外,它还实现了基类的read()函数(无参的)
 *  
 *  2.read():从流中读取1个字节的数据,返回结果是一个int,
 *  (如果编码是以一个字节一个字符的,可以尝试转成char,用来查看数据)
 * 
 *  3.BufferedInputStream是一种封装别的流以提高效率的
 * 流,所以它的初始化需要一个的InputStream流对象
 */

public class BufferedInputStreamTest {
    
    
	public static void main(String[] args) {
    
    
		try {
    
    
			FileInputStream fis =new FileInputStream("mine/0.txt");
			BufferedInputStream bis =new BufferedInputStream(fis);
			byte [] buff= new byte[1024];
			int len ;
			while ((len=fis.read(buff))!=-1) {
    
    
				System.out.println(new String(buff,0,len));
			}
			fis.close();
			bis.close();
		} catch (IOException e) {
    
    
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		
	}
}

猜你喜欢

转载自blog.csdn.net/LL__Sunny/article/details/108523960