A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈林阳 黑马帝   /  2011-10-23 21:30  /  1730 人查看  /  4 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

今天看老师教程:将C盘的一个文本文件复制到D盘
思路是:从C盘读一个字符,就往D盘写一个字符
代码如下:
        public static void copy_1() throws IOException
        {
                //创建目的地
                FileWriter fw = new FileWriter("RuntimeDemo_copy.txt");

                //与已有文件关联.
                FileReader fr = new FileReader("RuntimeDemo.java");

                int ch = 0;

                while((ch=fr.read())!=-1)
                {
                        fw.write(ch);
                }

                fw.close();
                fr.close();
        }

不明白为什么C盘和D盘在代码中都没有出现,怎么知道是从哪复制到哪呢?
还有new FileWriter("RuntimeDemo_copy.txt")和FileReader fr = new FileReader("RuntimeDemo.java")怎么知道他们都是在操作哪个盘呢?

4 个回复

倒序浏览
宁超 黑马帝 2011-10-23 22:43:02
沙发
FileReader fr = new FileReader("c:\\RuntimeDemo.java"); 读C盘的文件
FileWriter fw = new FileWriter("d:\\RuntimeDemo_copy.txt");给D盘根目录写。
你看视频的时候没注意到,其实老毕都是在他每天讲课的文件夹下 进行 文件的复制 读写的。所以他没写具体路径。



回复 使用道具 举报
其实,毕老师是把.java文件和.txt文件放在了同一个目录下面,所以在写路径的时候就没有必要写上C盘或者D、E、F盘了,要是真写上的话反而会抛出“FileNotFoundException”的异常。
回复 使用道具 举报
咖啡 黑马帝 2011-10-23 23:18:33
板凳
  FileWriter fw = new FileWriter("d:\\RuntimeDemo_copy.txt");

  FileReader fr = new FileReader("c:\\RuntimeDemo.java");就可以了

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
杨强 黑马帝 2011-10-24 19:55:13
报纸
{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}{:soso_e179:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马