L'exemple de cet article décrit la méthode de fusion mp3 en Java. Partagez-le avec tout le monde pour votre référence. La méthode spécifique de mise en œuvre est la suivante :
Copiez le code comme suit :
test de paquet ;
importer java.io.* ;
importer java.util.* ;
classe publique Test6
{
public static void main (String[] args) lève une exception
{
String s = "D:/out.mp3" ; // Répertoire de sortie et nom du fichier
List<String> list = new ArrayList<String>();
File dir = new File("D:/aaa"); // Répertoire à parcourir, utilisez la récursion pour obtenir les fichiers S'il y a trop de fichiers, ce sera terminé.
recursion(dir.listFiles(), list); // Fonction récursive
String[] ss = new String[list.size()];
pour (int i = 0; i < ss.length; i++)
{
ss[i] = liste.get(i);
}
System.out.println();
combiner(s, ss);
}
public static void recursion(File[] fs, List<String> list) // Obtenez récursivement les fichiers .mp3 dans tous les sous-répertoires.
{
pour (Fichier f : fs)
{
si (f.isDirectory())
{
récursion(f.listFiles(), liste);
}
autre
{
si (f.getName().endsWith(".mp3"))
{
list.add(f.getAbsolutePath());
}
}
}
}
la combinaison booléenne statique privée (String outFile, String[] inFiles) génère une exception
{
Fichier sorti = nouveau fichier (outFile);
Fichier[] fichiers = nouveau Fichier[inFiles.length];
pour (int i = 0; i < files.length; i++)
{
fichiers[i] = nouveau fichier (inFiles[i]);
}
FileInputStream fis = null ;
FileOutputStream fos = new FileOutputStream(outFile, true); // La fusion est en fait la suite du fichier, écrite comme true ;
pour (int i = 0; i < files.length; i++)
{
fis = nouveau FileInputStream(files[i]);
int len = 0;
pour (byte[] buf = nouvel octet[1024 * 1024]; (len = fis.read(buf)) != -1;)
{
fos.write(buf, 0, len);
}
}
fis.close();
fos.close();
renvoie vrai ;
}
}
J'espère que cet article sera utile à la programmation Java de chacun.