缓冲流---为字节流和字符流复制文件增加缓冲流
时间:2022-07-22
本文章向大家介绍缓冲流---为字节流和字符流复制文件增加缓冲流,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
缓冲流——增强性能
字节流的缓冲流(均未增加新方法)
BufferedInputStream
BufferedOutputStream
字节符的缓冲流
方法名称 |
方法作用 |
---|---|
readLine() |
返回值为String对象,读取一行 |
newLine() |
换行符 |
字节流的缓冲流代码
package cn.hxh.io.buffered;
import java.io.*;
public class BufferedByte {
public static void main(String[] args) throws IOException {
CopyFile("D:/aa/a.txt", "D:/aa/b.txt");
}
public static void CopyFile(String srcPath, String destPath) throws IOException {
CopyFile(new File(srcPath), new File(destPath));
}
public static void CopyFile(File src, File dest) throws IOException {
if (src.isDirectory()) {
throw new IOException("这是一个文件夹");
}
InputStream iStream = new BufferedInputStream(new FileInputStream(src));
OutputStream oStream = new BufferedOutputStream(new FileOutputStream(dest));
byte[] flush = new byte[1024];
int len = 0;
while (-1 != (len = iStream.read(flush))) {
oStream.write(flush, 0, len);
}
oStream.flush();
oStream.close();
iStream.close();
}
}
字符流的缓冲流代码
package cn.hxh.io.buffered;
import java.io.*;
public class BufferedChar {
public static void main(String[] args) {
File in = new File("D:/aa/a.txt");
File out = new File("D:/aa/b.txt");
BufferedReader re = null;
BufferedWriter wr = null;
String line = null;
try {
re = new BufferedReader(new FileReader(in));
wr = new BufferedWriter(new FileWriter(out));
while (null != (line = re.readLine())) {
wr.write(line);
wr.newLine();
}
wr.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if (wr != null)
wr.close();
if (re != null)
re.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
- Centos 下非 Root 安装 Microsoft R Open
- 下载TCGA所有癌症的maf文件做signature分析
- 比对NR库看看物种分布【直播】我的基因组88
- 探究某个基因的外显子覆盖度情况【直播】我的基因组87
- PHP底层的运行机制与原理
- CHROME开发者工具的小技巧
- 48条高效率的PHP优化写法
- 生信蓝领,一个不舍得分享的高通量数据分析框架
- 为什么in_array(0, ['a', 'b', 'c'])返回true
- Java 10 新特性解密,引入类型推断机制,将于 2018 年 3 月 20 日发布
- 肿瘤全外显子测序数据分析流程大放送
- 数据预处理 | 机器学习之特征工程
- 书写高质量jQuery代码的6条经验
- Thread ThreadLocal,傻傻分不清
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 读取SAP CRM One Order应用日志的优化方式
- 悟空活动中台 - 基于 WebP 的图片高性能加载方案
- DES ECB加解密的Java实现
- win10 uwp 不显示 SplashScreen 欢迎界面的方法
- WPF 在 XAML 写 C# 代码
- 解析 HashMap源码值概括
- 解析 HashMap 源码之基本操作
- Docker手册
- 小知识:TFA收集日志报错空间不足
- Java SPI 居然这么多知名框架在用
- Ceph 入门到实战之 RBD 块存储接口
- 聊聊 Python 面试最常被问到的几种设计模式(下)
- 带你用 Python 实现自动化群控(入门篇)
- 实战篇 | 基于freeRTOS的多任务事件传输demo(附代码)
- 在kali linux中你应该知道的信息收集姿势(一)