JAVA字符缓冲流用法
时间:2022-07-22
本文章向大家介绍JAVA字符缓冲流用法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
字符缓冲流用法:
BufferedReader: 字符缓冲输入流(也叫高效字符输入流)
成员方法:
public String readLine(); 一次读取一行数据并返回读取到的内容, 读不到返回null BufferedWriter: 字符缓冲输出流(也叫高效字符输出流) public void newLine(); 根据当前操作系统给出对应的换行符.
Windows换行符
Mac换行符
Unix换行符
rn
r
n
特点:字符缓冲流自带有缓冲区, 大小为8192个字符, 也就是16KB.
注意: 字符流只能拷贝纯文本文件.
需求1: 通过字符缓冲流, 将11.txt文件中的内容拷贝到12.txt文件中.
- 创建字符缓冲输入流对象, 关联数据源文件.
- 创建字符缓冲输出流对象, 关联目的地文件.
- 定义变量, 记录读取到的数据.
- 循环读取, 只要条件满足就一直读, 并将读取到的内容赋值给变量.
- 释放资源
public class CopyFile1 {
public static void main(String[] args) throws IOException {
//1. 创建字符缓冲输入流对象, 关联数据源文件.
BufferedReader br = new BufferedReader(new FileReader("11.txt"));
//2. 创建字符缓冲输出流对象, 关联目的地文件.
BufferedWriter bw = new BufferedWriter(new FileWriter("12.txt"));
//3. 定义变量, 记录读取到的数据.
int len;
//4. 循环读取, 只要条件满足就一直读, 并将读取到的内容赋值给变量.
while((len=br.read())!=-1){
bw.write(len);
}
//5. 释放资源
br.close();
bw.close();
}
}
需求2: 通过字符缓冲流"一次读写一行"的方式, 将1.txt文件中的内容拷贝到2.txt文件中.
- 创建字符缓冲输入流对象, 关联数据源文件.
- 创建字符缓冲输出流对象, 关联目的地文件.
- 定义变量, 记录读取到的内容.
- 循环读取, 只要条件满足就一直读, 并将读取到的内容赋值给变量.
- 释放资源.
public class CopyFile2 {
public static void main(String[] args) throws IOException {
//1. 创建字符缓冲输入流对象, 关联数据源文件.
BufferedReader br = new BufferedReader(new FileReader("1.txt"));
//2. 创建字符缓冲输出流对象, 关联目的地文件.
BufferedWriter bw = new BufferedWriter(new FileWriter("2.txt"));
//3. 定义变量, 记录读取到的内容.
String s;
//4. 循环读取, 只要条件满足就一直读, 并将读取到的内容赋值给变量.
while((s=br.readLine())!=null){
bw.write(s);
//千万注意一个小细节, 你特别容易忽略
//千万别忘记换行
bw.newLine();
}
//5. 释放资源.
br.close();
bw.close();
}
}
- MongoDB中各种类型的索引
- 敲一天代码了,轻松下吧,精彩 !看人潮如海
- MongoDB副本集其他细节
- 数据库表设计对性能的影响
- V部落博客管理平台开源啦! Vue+SpringBoot强强联合!
- SpringBoot+SpringSecurity处理Ajax登录请求
- MongoDB副本集配置
- MongoDB副本集搭建
- vhr部门管理数据库设计与编程
- SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题(六)
- 权限管理模块中动态加载Vue组件
- axios请求封装和异常统一处理
- SpringSecurity中密码加盐与SpringBoot中异常统一处理
- SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题(二)
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- PyQt5 技术篇-在clipboard.dataChanged.connect()里如何写入剪切板示例演示,pyqt5监听剪切板变动并写入剪切板内容
- 去除WordPress链接中出现的index.php
- MySQL 语法问题:You can‘t specify target table ‘xxx‘ for update in FROM clause. 原因及解决方法
- 配置 prometheus-operator 报警规则
- SQL语句查询出的数据进行字符串拼接,oracle批量删除数据库用户实例演示
- prometheus-operator 监控 k8s 外部集群
- Python+selenium 自动化-操作已启用的chrome浏览器实例演示,chrome启用调试端口方法
- JavaScript 技术篇-js检测原生对象类型实例演示,js的3种对象类型
- Python 技术篇-利用pyqt5库读取剪切板已复制数据的格式类型实例演示,python判断复制文件的文件类型
- 第36期:二叉树的遍历(小白必看)
- Python 技术篇-index()字符串倒叙匹配获取索引,字符串切片反向输出,逆向输出字符串
- JavaScript 技术篇-navigator.permissions读取chrome剪切板权限获取不生效原因:只有在https协议下使用有效。手动设置chrome页面剪切板读取权限方法
- 生产prometheus-operator 监控二进制kubernetes
- Excel 技术篇-跨页签统计某一区域下符合条件值的数量方法,COUNTIF函数、数量统计公式的用法实例演示
- Oracle 数据库用户锁定与解锁,用户锁定最大密码失败次数设置方法,ORA-28000: the account is locked问题解决方法