java实现mp3合并的方法
java实现mp3合并的方法
发布时间:2016-12-28 来源:查字典编辑
摘要:本文实例讲述了java实现mp3合并的方法。分享给大家供大家参考。具体实现方法如下:复制代码代码如下:packagetest;importj...

本文实例讲述了java实现mp3合并的方法。分享给大家供大家参考。具体实现方法如下:

复制代码 代码如下:

package test;

import java.io.*;

import java.util.*;

public class Test6

{

public static void main(String[] args) throws Exception

{

String s = "D:/out.mp3"; // 输出目录 & 文件名

List<String> list = new ArrayList<String>();

File dir = new File("D:/aaa"); // 要遍历的目录, 用递归拿文件,文件太多就完蛋.

recursion(dir.listFiles(), list); // 递归函数

String[] ss = new String[list.size()];

for (int i = 0; i < ss.length; i++)

{

ss[i] = list.get(i);

}

System.out.println();

combine(s, ss);

}

public static void recursion(File[] fs, List<String> list) // 递归得所有子目录的.mp3文件.

{

for (File f : fs)

{

if (f.isDirectory())

{

recursion(f.listFiles(), list);

}

else

{

if (f.getName().endsWith(".mp3"))

{

list.add(f.getAbsolutePath());

}

}

}

}

private static boolean combine(String outFile, String[] inFiles) throws Exception

{

File out = new File(outFile);

File[] files = new File[inFiles.length];

for (int i = 0; i < files.length; i++)

{

files[i] = new File(inFiles[i]);

}

FileInputStream fis = null;

FileOutputStream fos = new FileOutputStream(outFile, true); // 合并其实就是文件的续写,写成true

for (int i = 0; i < files.length; i++)

{

fis = new FileInputStream(files[i]);

int len = 0;

for (byte[] buf = new byte[1024 * 1024]; (len = fis.read(buf)) != -1;)

{

fos.write(buf, 0, len);

}

}

fis.close();

fos.close();

return true;

}

}

希望本文所述对大家的Java程序设计有所帮助。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Java学习
热门Java学习
编程开发子分类