我试图在应用程序中播放音乐,但我有一个代码,但我只是得到一个无效的指针例外。该文件在正确的目录中,所以我不知道我在哪里滑了。
public void startBGMusic(){
AudioPlayer myBackgroundPlayer = AudioPlayer.player;
ContinuousAudioDataStream myLoop = null;
try {
AudioStream myBackgroundMusic = new AudioStream(new FileInputStream(new File(getClass().getResource("Act/Music/OverTheInferno.wav").toURI())));
AudioData myData = myBackgroundMusic.getData();
myLoop = new ContinuousAudioDataStream(myData);
}catch(Exception error){
System.out.println("File Not Found");
System.out.println(error);
}
myBackgroundPlayer.start(myLoop);
}
我会更改此信息:
AudioStream myBackgroundMusic = new AudioStream(new FileInputStream(
new File(getClass().getResource("Act/Music/OverTheInferno.wav").toURI())));
这样的东西:
AudioStream myBackgroundMusic = new AudioStream(
getClass().getResourceAsStream("Act/Music/OverTheInferno.wav"));
也:
- 我会检查以确保流在使用之前的流不为空。
- 我不会捕获任何和所有例外,只是我要寻找的特定案例。
- 并将打印出异常的堆叠。