本帖最后由 王红潮 于 2012-9-23 10:20 编辑
- //在D盘创建一个文件,用于存储C盘文件中的数据
- import java.io.*;
- class CopyFileTest
- {
- public static void main(String[] args)throws IOException
- {
- copy_2();
- }
- public static void copy_2()
- {
- FileWriter fw = null;
- FileReader fr = null;
- try
- {
- fw = new FileWriter("FileReaderTest1.java");
- fr = new FileReader("OutputFactory.java");
- char[] ch = new char[1024];//要是文件比1024还大,为什么还能读出来?
- int len = 0;
- while ((len=fr.read(ch))!=-1)
- fw.write(ch,0,len);
- }
- catch (IOException e)
- {
- throw new RuntimeException("读写失败!");
- }
- finally
- {
- if (fr!=null)
- try
- {
- fr.close();
- }
- catch (IOException e)
- {
- throw new RuntimeException("文件读取失败!");
- }
- if (fw!=null)
- try
- {
- fw.close();
- }
- catch (IOException e)
- {
- throw new RuntimeException("文件写入失败!");
- }
- }
- }
- }
- //字符数组定义的大小是1024,可当循环1024完成后,它还会继续往下读取,数组是怎么继续往下自动读取文本数据的?
复制代码 |