按以下要求实现文件复制:
1. 创建文件“D:\我的青春谁做主.txt”并自行输入内容;
2. 创建C:\myFile的目录;
3. 创建输入流FileInputStream对象,负责对D:\我的青春谁做主.txt文件的读取;
4. 创建输出流FileOutputStream对象,负责将文件内容写入到C:\myFile\my Prime.txt中;
5. 创建中转站数组words,存放每次读取的内容;
6. 通过循环实现文件读写;
7. 关闭输入流、输出流;
package Ch03Homework;
import java.io.*;
public class IOStreamTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
//初始化字节流
FileInputStream fis = null;
InputStreamReader isr = null;
BufferedReader br = null;
FileOutputStream fos = null;
OutputStreamWriter osw = null;
BufferedWriter bw = null;
FileOutputStream fos1 = null;
OutputStreamWriter osw1 = null;
BufferedWriter bw1 = null;
try {
//创建文件“D:\我的青春谁做主.txt”并自行输入内容;
fos = new FileOutputStream("D:\\我的青春谁做主.txt");
osw = new OutputStreamWriter(fos);
bw = new BufferedWriter(osw);
bw.write("lllway\ncssasd");
bw.flush();
// 创建C:\myFile的目录;
File f = new File("E:\\myFile");
if(f.exists() == false) {
f.mkdir();
}else {
System.out.println("E:\\myFile目录已存在!!!");
}
//创建输入流FileInputStream对象,负责对D:\我的青春谁做主.txt文件的读取;
fis = new FileInputStream("D:\\我的青春谁做主.txt");
isr = new InputStreamReader(fis);
br = new BufferedReader(isr);
//创建输出流FileOutputStream对象,负责将文件内容写入到C:\myFile\my Prime.txt中;
fos1 = new FileOutputStream("E:\\myFile\\my Prime.txt");
osw1 = new OutputStreamWriter(fos1);
bw1 = new BufferedWriter(osw1);
// 创建中转站数组words,存放每次读取的内容;
char[] words = new char[1024];
//通过循环实现文件读写;
int len = 0;
while((len = br.read(words)) != -1) {
bw1.write(words,0,len);
}
bw1.flush();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
// 要求用try-catch-finally 处理异常,并且关闭流应放在finally 块中。
try {
if(br != null)br.close();
if(bw != null)bw.close();
if(bw1 != null)bw1.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}