📄 playsound.java
字号:
import java.io.*;
import javax.sound.sampled.*;
import java.net.URL;
/**
* 播放wav文件
* @author fantasyer
* @version 1.0
*/
public class PlaySound
{
private AudioFormat audioFormat; //声音的格式
private AudioInputStream audioInputStream; //播放的数据流
private SourceDataLine sourceDataLine; //往混合器中发送的数据流
private Clip clip; //SourceDataLine和Clip都是Line的子接口
//Clip的特点是数据均在内存中
public PlaySound(String fileName)
{
try
{
//AudioInputStream是InputStream的子类,可以将其和一音频文件相关联
//文件的长度表示不使用byte而是samples frame
URL url = Class.forName("PlaySound").getClassLoader().getResource(fileName);
audioInputStream = AudioSystem.getAudioInputStream(url);
//AudioFormat指定了音频的格式,注意这里的格式和文件后缀名还不一样
//这里的格式主要是指采样率等
audioFormat = audioInputStream.getFormat();
DataLine.Info dataLineInfo = new DataLine.Info(Clip.class,audioFormat);
clip = (Clip)AudioSystem.getLine(dataLineInfo);
clip.open(audioInputStream);
clip.start();
}
catch (Exception e)
{
e.printStackTrace();
}
}
//for test
public static void main(String[] args)
{
new PlaySound("Eat.wav");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -