/*
* 需求:做一个音乐串烧
* 分析:
* 1. 有n个音乐,找到高潮部分,
* 2. 获取高潮部分的流对象
* 3. 把这部分对象保存成一个mp3
* 4. 把它们拼接起来
* */
以下为源码供大家分享:
方法一:
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.SequenceInputStream;
import java.util.Scanner;
public class SpecialMedlyTest {
public static void main(String[] args) {
SpecialMedlyTest.musicMenu();
}
// 截取音乐高潮部分
public static void musicMenu() {
boolean flag = true; //判断是否退出程序
//while循环可实现N个音乐拼接的操作
while(true && flag){
//以下只是拼接2个音乐的拼接
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);
specialMedly(f1, f2, f3);
System.out.println("是否继续拼接音乐?(Y or N):");
String string = sc.nextLine();
if(string.equalsIgnoreCase("Y")){
flag = true;
}else if(string.equalsIgnoreCase("N")){
flag = false;
System.out.println("你选择退出了程序...");
break;
}else{
System.out.println("输入有误!程序正在自动退出...");
break;
}
}
}
// 合并音乐,构成音乐串烧
@SuppressWarnings("resource")
public <