在java中如果要对文件进行读写,需要通过“流”进行读写操作,那什么是流呢?
流,可以理解为“通道”,是指一连串的字符,已先进先出的方式发送和接收数据的通道。
按照不同的分类方式,可以将流分为不同类型:
(1)按照流的流向分类,可以将流分为输入流和输出流(从客户端或内存的角度出发),这四个类都是抽象类,只能作为父类:
(2)按照所操作的数据单元的不同,流可以分为字节流和字符流(字节是8位,字符是16位):
使用字节流复制文本文件():
使用字符流操作数据:
在字符流中,输入流父类Reader类下,有FileReader类,同时还有BufferedReader类,它和FileReader类的不同之处在于BufferedReader类带有缓冲区,它可以把一批数据读到缓冲区,避免每次都从数据源读取数据,提高读取效率,
通常和FileReader类一起使用。
使用字符流案例:读取文件并替换,然后重新写入