学习笔记,仅供参考,有错必纠


文章目录

  • IO流
    • 带缓冲的字符流
      • BufferedReader和BufferedWriter
      • readLine和newLine方法

IO流

带缓冲的字符流

BufferedReader和BufferedWriter

BufferedReader的read()方法读取字符时会一次读取若干字符到缓冲区, 然后逐个返回给程序, 降低读取文件的次数, 提高效率;

BufferedWriter的write()方法写出字符时会先写到缓冲区, 缓冲区写满时才会写到文件, 降低写文件的次数, 提高效率。

  • 举个例子
package com.guiyang.bean;import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;public class Demo3_Copy {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new FileReader("zzz.txt"));BufferedWriter bw = new BufferedWriter(new FileWriter("www.txt"));int c;while ((c = br.read()) != -1) {bw.write(c);}br.close();bw.close();}
}

readLine和newLine方法

readLine是BufferedReader类中的一个方法,它可以读取一个文本行

public String readLine()

通过下列字符之一即可认为某行已终止:换行 \n、回车 \r或回车后直接跟着换行。

返回值:包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回null

newLine是BufferedWriter类中的一个方法,它可以写入一个行分隔符

public void newLine()

行分隔符字符串由系统属性 line.separator 定义,并且不一定是单个新行 \n符,它是一个跨平台的方法。

  • 举个例子

zzz.txt:

安徽财经大学
统计与应用数学学院
应用统计
山羊

JAVA代码:

package com.guiyang.bean;import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;public class Demo4_Buffered {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new FileReader("zzz.txt"));BufferedWriter bw = new BufferedWriter(new FileWriter("ggg.txt"));String line;while ((line = br.readLine()) != null) {System.out.println(line);bw.write(line);bw.newLine();}br.close();bw.close();}
}

输出结果:

安徽财经大学
统计与应用数学学院
应用统计
山羊

第三次学JAVA再学不好就吃翔(part108)--带缓冲的字符流相关推荐

  1. 第三次学JAVA再学不好就吃翔(part106)--字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流输入流FileReader 字符流是什么 FileReader类构造方法 举个例子 字符流输出流FileWriter FileWriter构造方法 ...

  2. 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...

  3. 第三次学JAVA再学不好就吃翔(part114)--Properties类

    学习笔记,仅供参考,有错必纠 文章目录 Properties类 Properties类概述 Properties类的特殊功能 Properties的load和store功能 Properties类 P ...

  4. 第三次学JAVA再学不好就吃翔(part110)--使用指定的码表读写字符

    学习笔记,仅供参考,有错必纠 使用指定的码表读写字符 FileReader和FileWriter是使用默认码表(比如gbk)读写文件,如果某个文件的编码表采用的不是gbk而是utf-8,则在进行读写操 ...

  5. 第三次学JAVA再学不好就吃翔(part101)--IO流

    学习笔记,仅供参考 文章目录 IO流 IO流的概述及其分类 FileInputStream 构造方法 成员方法 举个例子 FileOutputStream 构造方法 成员方法 举个例子 IO流 IO流 ...

  6. Java的IO操作(五) - PrintStream类、字符流、Reader和Writer、带缓冲的字符流BufferedReader和BufferedWriter...

    1. PrintStream类 我们都知道,int类型在Java中占4个字节,如1在内存中表示为 00000000 00000000 00000000 00000001.如果我们直接使用OutputS ...

  7. 第三次学JAVA再学不好就吃翔(part46)--Scanner类

    学习笔记,仅供参考 文章目录 Scanner类 Scanner获取数据出现的问题 Scanner类 概述 Scanner是在java.util包下的一个类,使用该类时我们需要导包.这个类被final修 ...

  8. 第三次学JAVA再学不好就吃翔(part117)--单例设计模式

    学习笔记,仅供参考,有错必纠 文章目录 多线程 单例设计模式 饿汉式 懒汉式 第三种格式 Timer类 线程的五种状态 多线程 单例设计模式 单例设计模式,即保证类在内存中只有一个对象,如何保证类在内 ...

  9. 第三次学JAVA再学不好就吃翔(part109)--LineNumberReader类

    学习笔记,仅供参考,有错必纠 IO流 LineNumberReader类 该类继承自java.io.BufferedReader,该类可以跟踪行号的缓冲字符输入流.此类定义了方法 setLineNum ...

最新文章

  1. 小米输掉官司,倒打一耙不如坦然认错
  2. 编译自己的emacs
  3. Matlab概率统计编程指南
  4. 第四讲 数学公理化方法(上)
  5. 信创产业已成现象级新风口 代码“源头”安全该如何守护?
  6. IP地址的两种表示方法:整数和点分十进制
  7. 上位机和下位机的区别是什么
  8. CentOS 5 全功能WWW服务器搭建全教程 V3.0 【转】
  9. 一本通1373:鱼塘钓鱼(fishing)
  10. 单片机晶振电路的设计与计算
  11. 计算机键盘都起什么作用,电脑键盘各个按键功能 电脑键盘各个按键有什么功能...
  12. 更改C盘用户目录下的文件夹名称
  13. php短视频转码,YYC松鼠短视频系统V2.0版本发布,亮点新增转码加水印功能
  14. linux关机卡屏,Ubuntu关机卡住无法关机的解决方法
  15. Win10 高分屏软件界面字体模糊问题解决
  16. K8S StatefulSet方式部署elasticsearch集群 —— 筑梦之路
  17. HTML+CSS大作业:购物商城网页设计与实现——手机主题网站
  18. owt webrtc 音频没有声音
  19. 面向对象的五大原则是什么
  20. 如何实现产销平衡_实现SOP平衡的流程和策略

热门文章

  1. 登錄CentOS出現-bash-4.1#
  2. python可变数据类型与不可变数据类型
  3. LibSVM使用记录 C++ Visual studio
  4. VS中生成时“sgen.exe”已退出,代码为 1解决办法
  5. ASP.NET 之 MVC框架及搭建
  6. MapReduce的方式进行HBase向HDFS导入和导出
  7. 第二章:java_基本语法_3 运算符
  8. Android进阶知识:ANR的定位与解决
  9. mysql学习笔记-事务
  10. centos 7 安装 mail