要在Java中播放声音,您可以使用Java的内置库javax.sound.sampled。以下是一个简单的示例,展示了如何使用javax.sound.sampled库播放.wav文件:
import javax.sound.sampled.*;
import java.io.*;
public class SoundPlayer {
public static void main(String[] args) {
try {
// 指定音频文件路径
File audioFile = new File("path/to/your/audio/file.wav");
// 创建一个文件输入流
FileInputStream audioStream = new FileInputStream(audioFile);
// 创建音频输入流
AudioInputStream audioIn = AudioSystem.getAudioInputStream(audioStream);
// 获取音频格式
AudioFormat audioFormat = audioIn.getFormat();
// 创建数据缓冲区
DataLine.Info info = new DataLine.Info(Clip.class, audioFormat);
Clip audioClip = (Clip) AudioSystem.getLine(info);
// 打开音频剪辑并加载音频数据
audioClip.open(audioFormat, audioIn.getFrameLength(), audioIn.available());
audioClip.loop(0); // 播放音频,0表示无限循环
// 等待音频播放完毕
Thread.sleep(audioClip.getMicrosecondLength() / 1000);
// 关闭音频剪辑
audioClip.close();
audioIn.close();
audioStream.close();
} catch (UnsupportedAudioFileException e) {
System.out.println("不支持的音频文件格式");
e.printStackTrace();
} catch (IOException e) {
System.out.println("音频文件读取错误");
e.printStackTrace();
} catch (LineUnavailableException e) {
System.out.println("音频行不可用");
e.printStackTrace();
} catch (InterruptedException e) {
System.out.println("线程中断错误");
e.printStackTrace();
}
}
}
此代码示例将加载.wav文件并播放音频。您可以根据需要修改代码以适应其他音频格式。
请注意,此示例使用Java标准库,无需使用任何第三方库。
领取专属 10元无门槛券
手把手带您无忧上云