今天看到文件的复制,就自己动手简单的写了一下!1.通过FileInputStream 字节流实现:
@Test
public void fileDemo() throws Exception {
File file = new File("c:"+File.separator+"text.txt");
File filename=new File("c:"+File.separator+"textCopy.txt");
if (filename.exists()) {
filename.delete();
filename.createNewFile();
fileCopy(file,filename);
} else {
fileCopy(file,filename);
}
}
public static void fileCopy(File file,File fileCopy) throws Exception{
FileInputStream in = new FileInputStream(file);
byte[] arr=new byte[in.available()];
in.read(arr);
FileOutputStream out =new FileOutputStream(fileCopy);
out.write(arr);
in.close();
out.close();
}
2.成行读取
@Test
public void fileCopy() throws Exception {
File file = new File("c:" + File.separator + "text.txt");
File filename = new File("d:" + File.separator + "copy.txt");
if (!filename.exists()) {
filename.createNewFile();
}
copyDemo(file, filename);
}
public static void copyDemo(File file, File filename) throws Exception {
BufferedReader bu = new BufferedReader(new FileReader(file));
BufferedWriter wr = new BufferedWriter(new FileWriter(filename));
String str = null;
while ((str = bu.readLine()) != null) {
wr.write(str);
wr.newLine();
}
bu.close();
wr.close();
}
3.接收控制台输入的内容写到文件中
@Test
public void buffTest() throws IOException {
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader bu = new BufferedReader(in);
File file = new File("c:" + File.separator + "new.txt");
BufferedWriter wr = new BufferedWriter(new FileWriter(file));
String str = bu.readLine();
System.out.println(str);
wr.write(str);
in.close();
bu.close();
wr.close();
}