博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java基础-IO流对象之字符缓冲流(BufferedWriter与BufferedReader)
阅读量:5840 次
发布时间:2019-06-18

本文共 3351 字,大约阅读时间需要 11 分钟。

            Java基础-IO流对象之字符缓冲流(BufferedWriter与BufferedReader)

                                    作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

 

 

 

 

一.字符缓冲流

  字符缓冲流根据流的方向,共有2个:

      1>. 写入数据到流中,字节缓冲输出流 BufferedReader

      2>.读取流中的数据,字节缓冲输入流 BufferedWriter

  完成文本数据的高效的写入与读取操作。

 

二.字符输出缓冲流(BufferedWriter

 BufferedWriter有一个特有的方法就是newLine,可以解决Windows和Linux换行符不同的困扰。

1 /* 2 @author :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6  7 package cn.org.yinzhengjie.note5; 8  9 import java.io.BufferedWriter;10 import java.io.FileWriter;11 import java.io.IOException;12 13 public class BufferedWriteDemo {14     public static void main(String[] args) throws IOException {15         //创建字符输出流,封装文件16         FileWriter fw = new FileWriter("yinzhengjie.txt");17         BufferedWriter bfw = new BufferedWriter(fw);18         //写入一个字符19         bfw.write(97);20         //写入换行符,不论你的操作系统是Linux还是Windows它会自动帮你处理换行符号21         bfw.newLine();22         bfw.flush();23         //写入一个字符数组24         bfw.write("尹正杰".toCharArray());25         //写入换行符,不论你的操作系统是Linux还是Windows它会自动帮你处理换行符号26         bfw.newLine();27         bfw.flush();28         //写入字符串29         bfw.write("yinzhengjie");30         //写入换行符,不论你的操作系统是Linux还是Windows它会自动帮你处理换行符号31         bfw.newLine();32         bfw.flush();33         bfw.close();34         35     }36 }

 

 三.字符缓冲输入流(BufferedReader)

 

  从字符输入流中读取文本,缓冲各个字符,从而实现字符,数组和行的高效读取。

1 /* 2 @author :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6  7 package cn.org.yinzhengjie.note5; 8  9 import java.io.BufferedReader;10 import java.io.FileReader;11 import java.io.IOException;12 13 public class BufferedReaderDemo {14     public static void main(String[] args) throws IOException {15         //创建字符输入流缓冲流对象,构造方法传递字符输入流,包装数据源文件16         BufferedReader bfr = new BufferedReader(new FileReader("yinzhengjie.txt"));17         //调用缓冲流的方法readLine()读取文本行18         //循环读取文本行,结束条件readLine()返回null。19         String line;20         //定义以后计数器,用来定义行号,当然BufferedReader也有一个子类LineNumberReader也可以实现换行号的读取。21         int lineNumber = 0;22         while( ( line = bfr.readLine()) != null) {23             lineNumber++;24             //此时的line本身是没有换行符号的,因为换行符已经被readLine给脱掉了,因此我们应该调用println。25             System.out.println(lineNumber+"  "+line);26         }27         bfr.close();28     }29 }

 

四.字符缓冲区流复制文本文件

1 /* 2 @author :yinzhengjie 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/ 4 EMAIL:y1053419035@qq.com 5 */ 6  7 package cn.org.yinzhengjie.note5; 8  9 import java.io.BufferedReader;10 import java.io.BufferedWriter;11 import java.io.FileReader;12 import java.io.FileWriter;13 import java.io.IOException;14 15 public class CopyFile {16     public static void main(String[] args) throws IOException {17         BufferedReader bfr = new BufferedReader(new FileReader("yinzhengjie.txt"));18         BufferedWriter bfw = new BufferedWriter(new FileWriter("yinzhengjie.backup"));19         20         //读取文本行,读一行,写一行,写换行21         String line;    //默认为null22         while( (line = bfr.readLine()) != null ) {23             bfw.write(line);24             bfw.newLine();25             bfw.flush();26         }27         bfw.close();28         bfr.close();29     }30 }

 

转载于:https://www.cnblogs.com/yinzhengjie/p/8982743.html

你可能感兴趣的文章
Git分支2
查看>>
一键安装Gitlab后的备份、迁移与恢复
查看>>
因为本人工作繁忙,精力有限,本博客停止更新。有兴趣的博友可以关注我在CSDN上的主博客...
查看>>
SQL server查看触发器是否被禁用
查看>>
[C++基础]在构造函数内部调用构造函数
查看>>
跟随我在oracle学习php(8)
查看>>
Spring 3.1.0 Hibernate 3.0 Eclipse Spring WEB例子
查看>>
UVA-10212 The Last Non-zero Digit. 分解质因子+容斥定理
查看>>
求两个集合的交集,并集,差集
查看>>
Kotlin的语法糖(一)基础篇
查看>>
OkHttp源码分析
查看>>
让你的app体验更丝滑的11种方法!冲击手机应用榜单Top3指日可待
查看>>
windows kernel exploitation基础教程
查看>>
NS_OPTIONS枚举的用法
查看>>
java9系列(九)Make G1 the Default Garbage Collector
查看>>
QAQ高精度模板笔记√
查看>>
Jmeter计数器的使用-转载
查看>>
【Android笔记】入门篇02:全屏设置和禁止横屏竖屏切换
查看>>
4. Median of Two Sorted Arrays
查看>>
Kubernetes的本质
查看>>