package zhihua2;
import java.io
.BufferedInputStream;
import java.io
.BufferedOutputStream;
import java.io
.BufferedReader;
import java.io
.BufferedWriter;
import java.io
.File;
import java.io
.FileInputStream;
import java.io
.FileOutputStream;
import java.io
.FileReader;
import java.io
.FileWriter;
import java.io
.IOException;
import org.junit.Test;
/*
* 1.流的分类,
* 按照数据流向的不同,输入流 输出流
* 按照处理数据的单位的不同,字节流 字符流(处理的文本文件)
* 按照角色的不同,节点流(直接作用于文件的) 处理流
* 2.IO的体系
* 抽象基类 节点流(文件流) 缓冲流(处理流的一种,可以提升文件操作的效率)
*
* InputStream FileInputStream BufferedInputStream
* OutputStream FileOutputStream BufferedOutputStream (flush()) //处理非文本文件
* Reader FileReader BufferedReader (readLine())
* Writer FileWriter BufferedWriter (flush()) //处理文本文件
*/
public class TestBuffered {
@Test
public void testBufferedReader() {
BufferedReader br = null;
BufferedWriter bw = null;
try {
File file = new File("mysql.txt");
File file1 = new File("mysql2.txt");
FileReader fr = new FileReader(file);
FileWriter fw = new FileWriter(file1);
br = new BufferedReader(fr);
bw = new BufferedWriter(fw);
// char[] c = new char[1024];
// int len;
// while((len = br.read(c))!=-1) {
// String str = new String(c, 0, len);
// System.out.println(str);
// }
// String str;
// while((str = br.readLine()) != null) {
// System.out.println(str);
// }
String str;
while((str = br.readLine()) != null) {
bw.write(str);
bw.newLine();
bw.flush();
}
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
if(bw != null) {
try {
bw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(br != null) {
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
流处理
最新推荐文章于 2021-01-21 21:50:36 发布