java 缓冲流的close_缓冲流介绍和使用

1.1 缓冲流的基本使用

1.1.1 案例代码八:package com.itheima_04;import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;/* * BufferedWriter:将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。 * BufferedReader:从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。 */public class BufferedStreamDemo {public static void main(String[] args) throws IOException {//创建输出缓冲流对象/*BufferedWriter bw = new BufferedWriter(new FileWriter("bw.txt"));bw.write("hello");//bw.flush();bw.close();*///创建输入缓冲流对象BufferedReader br = new BufferedReader(new FileReader("FileWriterDemo.java"));/*//一次读写一个字符int ch;while((ch=br.read())!=-1){System.out.print((char)ch);}*///一次读写一个字符数组char[] chs = new char[1024];int len;while((len=br.read(chs))!=-1) {System.out.print(new String(chs,0,len));}//释放资源br.close();}}

1.2 缓冲流复制文本文件的两种方式

利用缓冲流把项目路径下的FileWriterDemo.java中的内容复制到项目路径下的Copy.java中

第一种方式:使用缓冲流不使用字符数组

第二种方式:使用缓冲流使用字符数组

1.2.1 案例代码九:package com.itheima_04;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;/* * 需求: * 把项目路径下的FileWriterDemo.java中的内容复制到项目路径下的Copy.java中 * * 数据源: * FileWriterDemo.java -- 读数据 -- FileReader -- 高效的读数据 -- BufferedReader * 目的地: * Copy.java -- 写数据 -- FileWriter -- 高效的写数据 -- BufferedWriter */public class CopyFileDemo {public static void main(String[] args) throws IOException {//创建输入缓冲流对象BufferedReader br = new BufferedReader(new FileReader("FileWriterDemo.java"));//创建输出缓冲流对象BufferedWriter bw = new BufferedWriter(new FileWriter("Copy.java"));//读写数据/*//一次读写一个字符int ch;while((ch=br.read())!=-1) {bw.write(ch);}*///一次读写一个字符数组char[] chs = new char[1024];int len;while((len=br.read(chs))!=-1) {bw.write(chs,0,len);}//释放资源bw.close();br.close();}}

1.3 缓冲流的特有方法使用

BufferedWriter

void newLine():写一个换行符,这个换行符由系统决定,不同的操作系统newLine()方法使用的换行符不同

windows:\r\n

linux:\n

mac:\r

BufferedReader

String readLine():一次读取一行数据,但是不读取换行符

1.3.1 案例代码十:package com.itheima_05;import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;/* * 缓冲流的特殊功能: * BufferedWriter * void newLine():写一个换行符,这个换行符由系统决定 * BufferedReader * String readLine():一次读取一行数据,但是不读取换行符 */public class BufferedStreamDemo {public static void main(String[] args) throws IOException {/*BufferedWriter bw = new BufferedWriter(new FileWriter("bw2.txt"));for(int x=0; x<10; x++) {bw.write("hello"+x);//bw.write("\r\n");bw.newLine();bw.flush();}bw.close();*/BufferedReader br = new BufferedReader(new FileReader("br.txt"));/*String line = br.readLine();System.out.println(line);line = br.readLine();System.out.println(line);line = br.readLine();System.out.println(line);line = br.readLine();System.out.println(line);*/String line;//1:br.readLine()//2:line=br.readLine()//3:line != nullwhile((line=br.readLine())!=null) {System.out.println(line);}br.close();}}

1.4 缓冲流的特有方法复制文件

1.4.1 案例代码十一:package com.itheima_05;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;/* * 需求: * 把项目路径下的FileWriterDemo.java中的内容复制到项目路径下的Copy.java中 * * 数据源: * FileWriterDemo.java -- 读数据 -- FileReader -- 高效的读数据 -- BufferedReader * 目的地: * Copy.java -- 写数据 -- FileWriter -- 高效的写数据 -- BufferedWriter */public class CopyFileDemo {public static void main(String[] args) throws IOException {//创建输入缓冲流对象BufferedReader br = new BufferedReader(new FileReader("FileWriterDemo.java"));//创建输出缓冲流对象BufferedWriter bw = new BufferedWriter(new FileWriter("Copy.java"));//读写数据String line;while((line=br.readLine())!=null) {bw.write(line);bw.newLine();bw.flush();}//释放资源bw.close();br.close();}}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值