* 转换流:就两个InputStreamReader OutputStreamWriter
* 解码:字节数组--》字符串
* 编码:字符串--》字节数组
*/
public static void copyFile(){
//提供相应的文件
File file1 = new File("C:/Users/Administrator/Desktop/1.txt");
File file2 = new File("C:/Users/Administrator/Desktop/2.txt");
//在流的外面包装一层缓冲流
BufferedReader br = null;
BufferedWriter bw = null;
try {
//提供响应的流
FileInputStream fis = new FileInputStream(file1);
FileOutputStream fos = new FileOutputStream(file2);
//提供相应的转换流 是将字节流转换为字符流读到程序中来处理 --》解码
InputStreamReader isr = new InputStreamReader(fis, "GBK");
//提供相应的转换流 将程序中的字符流按照一个编码格式转化为相应的字节流输出 --》编码
OutputStreamWriter osw = new OutputStreamWriter(fos, "GBK");
br = new BufferedReader(isr);
bw = new BufferedWriter(osw);
String str = null;
while((str = br.readLine()) != null){
bw.write(str);
bw.flush();
bw.newLine();
}
} catch (IOException e) {
e.printStackTrace();
}finally {
if(bw != null){
try {
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if(br != null){
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}