IO流有很多操作的类,如InputStream OutputStream Reader Writer等,在io操作时只要明确了要使用的流那么一切问题也就迎刃而解了。
流操作规律
1、明确源和目标
源(输入流) InputStream
目的(输出流)OutputStream
2、操作的是否为纯文本数据
若是可以使用字符流 不是则必须使用字节流
3、确定具体要使用的对象
复制一个文本文件,首先明确了是纯文本,所以可以使用字符流,操作的是一个纯文本的数据 那么可以使用FileReader FileWriter
复制操作是从硬盘到硬盘:原设备与目的设备都找到了
利用缓冲流提高读取效率 缓冲流实质上操作的是流本身,所以直接关闭缓冲流即可
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
public class CopyFile3 {
//拷贝一个文本文件
//是一个文本文件 所以可以用文件流 硬盘到硬盘
public static void copyFile() throws Exception{
FileReader fr=new FileReader("a.txt");
FileWriter fw=new FileWriter("c.txt");//如果文件不存在就创建 存在就覆盖
BufferedReader bfr=new BufferedReader(fr);
BufferedWriter brw=new BufferedWriter(fw);
String line=null;
while((line=bfr.readLine())!=null){//读取一行
brw.write(line);
}
bfr.close();
brw.close();
}
public static void main(String[] args) throws Exception {
copyFile();
}
}