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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

在主方法中直接调用demo1()方法即可!
//主要功能方法
        private static void demo1() throws IOException {
                //定义用户录入两个歌曲文件
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入第一个歌曲路径:");
                File f1 = getFile(sc);
                System.out.println("请输入第二个歌曲路径:");
                File f2 = getFile(sc);       
                System.out.println("请输入输出路径,再加上文件名,中间用空格隔开:(格式:文件路径 文件名)");
                File f3 = found(sc);
                merge(f1,f2,f3);
        }
        //定义方法把两首歌曲合并成一首,并输出到指定文件夹中
                public static void merge(File f1,File f2,File f3) throws IOException{
                        SequenceInputStream sis = new SequenceInputStream(new FileInputStream(f1),new FileInputStream(f2));        //创建序列流
                        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(f3));
                        int n;
                        while((n=sis.read())!=-1){
                                bos.write(n);
                        }
                        sis.close();
                        bos.close();
                        System.out.println("转换成功!");
                }
        //创建输出路径
        public static File found(Scanner sc) throws IOException{
                        String str = sc.nextLine();
                        String[] s = str.split(" ");
                        File f1 = new File(s[0]);
                        if(!f1.exists()){
                                f1.mkdirs();
                        }
                        File f2 = new File(s[0],s[1]);
                        if(!f2.exists()){
                                f2.createNewFile();
                        }
                        return f2;
        }
       
        //获取第一个歌曲文件路径
        public static File getFile(Scanner sc){
                while(true){
                        File file = new File(sc.nextLine());
                        if(!file.exists()){
                                System.out.println("输入的文件不存在,请重新输入:");
                        }else if(file.isDirectory()){
                                System.out.println("输入的是文件夹,请重新输入:");
                        }else{
                                return file;
                        }
                }
        }

0 个回复

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