黑马程序员技术交流社区

标题: 这是今天的练习题,感觉不错分享大家!不要喷我哦 [打印本页]

作者: tongren    时间: 2016-4-19 23:56
标题: 这是今天的练习题,感觉不错分享大家!不要喷我哦

        /**
         * 在控制台录入文件的路径,将文件拷贝到当前项目下
         *
         * 分析:
         *
         * 1,定义方法对键盘录入的路径进行判断,如果是文件就返回
         * 2,在主方法中接收该文件
         * 3,读和写该文件
         * @throws IOException
         */
        public static void main(String[] args) throws IOException {
                File file = getFile();                                        //获取文件
                BufferedInputStream  bis = new BufferedInputStream(new FileInputStream(file));
                BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(file.getName()));
               
                int b;
                while((b = bis.read()) != -1) {
                        bos.write(b);
                }
               
                bis.close();
                bos.close();
        }

        /*
         * 定义一个方法获取键盘录入的文件路径,并封装成File对象返回
         * 1,返回值类型File
         * 2,参数列表无
         */
        public static File getFile() {
                Scanner sc = new Scanner(System.in);                                //创建键盘录入对象
                System.out.println("请输入一个文件的路径:");
                while(true) {
                        String line = sc.nextLine();                                        //接收键盘录入的路径
                        File file = new File(line);                                                //封装成File对象,并对其进行判断
                        if(!file.exists()) {
                                System.out.println("您录入的文件路径不存在,请重新录入:");
                        }else if(file.isDirectory()) {
                                System.out.println("您录入的是文件夹路径,请重新录入:");
                        }else {
                                return file;
                        }
                }


作者: 长衫造纸农_    时间: 2016-4-20 08:50
新人贴一般都是拿来暖的
作者: tongren    时间: 2016-4-20 12:47
呵呵,这个暖我给满分
作者: zhangyapeng    时间: 2016-4-20 13:54
上课的例题




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2