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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package com.heima.test;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;

public class test8 {

        /**
         * 在控制台录入文件的路径,将文件拷贝到当前项目下
         * 分析:
         * 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 a;
                while ((a=bis.read())!=-1) {
                        bos.write(a);
                }
                bis.close();
                bos.close();
        }

               
        public static File getFile(){
                Scanner sc = new Scanner(System.in);
                System.out.println("请录入一个文件路径:");
                while (true) {
                        String line = sc.nextLine();
                        File file = new File(line);
                        if (!file.exists()) {
                                System.out.println("你输入的文件路径不存在,请重新输入!");
                        }else if (file.isDirectory()) {          //小心写成!file.isDirectory()的格式!!
                                System.out.println("你输入的是文件夹路径,请重新输入!");
                        }else {
                                return file;
                        }
                }
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马