Contents
19.10. 字节流转换字符流¶
FileCopyWirthBuffer_byte_string_transform.java
package com.a51work.com;
import java.io.*;
/**
* 字符流缓冲
*/
public class FileCopyWirthBuffer_byte_string_transform {
public static void main(String[] args) {
try (
//创建字节文件输入流对象
FileInputStream fis = new FileInputStream("D:\\GitHub\\test.sh");
//创建转换流对象
InputStreamReader isr = new InputStreamReader(fis);
// 创建字符缓冲输入流对象
BufferedReader bis = new BufferedReader(isr);
//创建字节文件输出流对象
FileOutputStream fos = new FileOutputStream("D:\\GitHub\\test2.sh");
//创建转换流对象
OutputStreamWriter osw = new OutputStreamWriter(fos);
// 创建字符缓冲输入流对象
BufferedWriter bos = new BufferedWriter(osw)) {
//开始时间,当前系统的纳秒时间
long startTime = System.nanoTime();
// 首先读取一行文本
String line = bis.readLine();
while (line != null) {
//开始写入数据
bos.write(line);
//写入一个换行符
bos.newLine();
//再读取一行文本
line = bis.readLine();
}
System.out.println("复制完成!");
//结束时间,当前系统的纳秒时间
long End_Time = System.nanoTime() - startTime;
System.out.println("耗时:" + (End_Time / 1000000.0) + "毫秒");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/*
复制完成!
耗时:0.534277毫秒
* */