第一次凭自己解决了一个小问题!

 【封面来自于网络,懒得自己做图了】

———————————————————————————————————————————

记一次难忘的独自完成一个需求的事件。

        //折腾了好几个小时,但是做出来的时候,是真的快乐,这是我一生都难忘的记忆
        //把文件夹下所有的mp4整理后拷贝到"output"文件夹下
        //文件命名吻别为"a1.mp4""a2.mp4""b4.mp3"
        //1.
        File output=new File("d:/nothing/mu/output");
        output.mkdirs();
        File F=new File("d:/nothing/mu/");
        File[] f=F.listFiles();

        System.out.println(Arrays.toString(f));//[d:\nothing\mu\a, d:\nothing\mu\b, d:\nothing\mu\c, d:\nothing\mu\output]

       for (File f1:f)//先遍历大文件夹a
        {int i=0;
            int ii=0;
            for (File mu:f1.listFiles())//后遍历文件
            {
                System.out.println(output.getPath()+"/"+F.list()[i] +"/"+ii+".mp3");
                System.out.println(mu);//获取路径
                File n=new File(output.getPath() +"/"+F.list()[i]+ii+".mp3");
                n.createNewFile();
                System.out.println("n-");
                System.out.println(n);
                System.out.println("n+");
                mu.getPath();
                System.out.println(mu.getPath());
                IOHelpers.readAllBytes(mu.getPath());
                IOHelpers.writeAllBytes(output.getPath()+"/"+ F.list()[i] +ii+".mp3",IOHelpers.readAllBytes(mu.getPath()));

                ii++;

            }
        i++;
        }

即使中途尝试了好几个小时,输出的结果仍不完美,回看代码,反思了几点:

  • 在了解需求之后,并没有先规划出一个大致的代码逻辑,导致中途写到哪想到哪,混乱无序。
  • 对于各种类型的数据,之间互通的方法仍然掌握的不够透彻,对于数组等基础知识掌握的很薄弱。

根据这两点反思,之后我在写代码之前会先把需求拆解,变成可以实行的代码块,其次再一步步完成。

纪念下我的JAVA历程,虽然逻辑还不清晰,代码还不完美,但是在我现行阶段很🆗,很满意啦。

再接再厉!加油学JAVA!

顺便贴上自己曾经的错误尝试

        /*自己的错误尝试
        //1.创建"output"文件夹
        File output=new File("d:/nothing/mu/output");
        output.mkdirs();

        //2.获取mu文件夹下的文件夹
        File mt=new File("d:/nothing/mu/");
        System.out.println(Arrays.toString(mt.listFiles()));
        String[] fname=Arrays.toString(mt.listFiles()).split("/",Arrays.toString(mt.listFiles()).split("/").length-1);
        System.out.println(Arrays.toString(fname));//[[d:\nothing\mu\a, d:\nothing\mu\b, d:\nothing\mu\c, d:\nothing\mu\output]]

        //3.获取mp4文件名
        int i;
        for (i=0;i<=3;i++)
        {
            File mf=new File("d:\\nothing\\mu\\"+mt.list()[i]);//mf是
            //System.out.println(Arrays.toString(mf.list()));
            System.out.println(Arrays.toString(Arrays.toString(mf.list()).split(",", Arrays.toString(mf.list()).split(",").length - 1)));

            //4.复制mp4的byte与新建mp4文件
            int ii=0;
            ii++;
            switch (Arrays.toString(mt.list()))
            {
                case "a":
                    File mp4=new File(Arrays.toString(Arrays.toString(mf.listFiles())));
                    System.out.println(mp4);
                    //System.out.println(mf.list());
                    //String[] mp4=Arrays.toString(mf.listFiles()).split(",",Arrays.toString(mf.listFiles()).split(",").length-1);
                    //System.out.println(Arrays.toString(Arrays.toString(mf.list()).split(",", Arrays.toString(mf.list()).split(",").length - 1)));
                    //IOHelpers.writeAllBytes(mp4[ii]);
                    //IOHelpers.writeAllBytes(mp4[i]);
                    //需要借用拷贝
            }

        }
        */

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值