在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Java/ java把這段代碼不寫(xiě)死問(wèn)題出現(xiàn)在哪兒

java把這段代碼不寫(xiě)死問(wèn)題出現(xiàn)在哪兒

首先這是寫(xiě)死的代碼 ... 生成的mp3文件是可以播放的

        File file = new File(dir + "cing2.wav");
        File file2 = new File(dir + "a.wav");
        execute(file,  "f://111.mp3");
        execute(file2,  "f://222.mp3");

        File file3 = new File("f://111.mp3");
        File file4 = new File("f://222.mp3");
        InputStream is1 = new FileInputStream(file3) ;
        InputStream is2 = new FileInputStream(file4) ;

        OutputStream os = new FileOutputStream("f:/1.mp3") ;
        byte[]b1=new byte[128];
        byte[]b2=new byte[128];
        int len1 =0;
        int len2 =0;
        int index = 0;
        while((len1 = is1.read(b1))!=-1){
            index++;
            if(index==1){
                continue ;
            }
            os.write(b1, 0, len1 ) ;
        }
        index=0;
        while((len2 = is2.read(b2))!=-1){
            index++ ;
            os.write(b2, 0, len2 ) ;
        }
        is1.close();
        is2.close();
        os.flush();
        os.close() ;

這里是我把他寫(xiě)成 動(dòng)態(tài)循環(huán)的代碼

    OutputStream os = new FileOutputStream("f://k.mp3") ;
        byte[]b1=new byte[128];
        int len1 =0;
        int index = 0;
        for(int i = 0; i<listArr.size();i++){

            System.out.println(listArr.get(i));
            execute(new File(dir + listArr.get(i)),  "f://"+i+".mp3");


            InputStream is  = new FileInputStream(new File(dir + listArr.get(i)));
            while((len1 = is.read(b1))!=-1){
                index++;
                if(index==1){
                    continue ;
                }
                os.write(b1, 0, len1 ) ;
            }

        }

生成合并的mp3 卻整整大了幾倍,而且不能播放,是什么原因呢

回答
編輯回答
離殤
        OutputStream osv = new FileOutputStream("f://file//k.mp3") ;

        for(int i = 0; i<listArr.size();i++){
            System.out.println(dir + listArr.get(i));
            execute(new File(dir + listArr.get(i)),  data_dir+i+".mp3");
            InputStream is  = new FileInputStream(new File(data_dir+i+".mp3"));
            byte[]bytes=new byte[128];
            int lens =0;
            int indexs = 0;
            while((lens = is.read(bytes))!=-1){
                indexs++;
                if(indexs==1){
                    continue ;
                }
                osv.write(bytes, 0, lens ) ;
            }

        }

已解決

2017年7月25日 00:03