繁体   English   中英

获取未报告的异常尝试调用函数以播放.WAV时发生异常

[英]Getting unreported exception Exception when trying to call function to playback a .WAV

我正在尝试调用以下函数,该函数应该可以再现声音:

public static void emitirSonido() throws Exception {

URL url = new URL(
    "http://www.wavsource.com/snds_2014-05-25_4108314609264195/animals/chicken.wav");  //URL

Clip clip = AudioSystem.getClip();
// getAudioInputStream()

AudioInputStream ais = AudioSystem.
    getAudioInputStream( url );

clip.open(ais);
clip.loop(Clip.LOOP_CONTINUOUSLY);

SwingUtilities.invokeLater(new Runnable() {


    public void run() {

        JOptionPane.showMessageDialog(null, "ok!");
    }
});
}

为此,我正在使用一个简单的函数调用:

emitirSonido();

但我不断得到:

error: unreported exception Exception; must be caught or declared to be thrown
            emitirSonido();
                        ^

老实说,我不知道还能尝试什么,因为如果我删除抛出的东西,它只会给我另外7个错误,该代码最初来自javasound.info

任何帮助都会很棒。 谢谢

emitirSonido被声明为抛出Exception ...

emitirSonido() throws Exception

调用此方法时,您必须捕获或重新抛出它,例如...

try {
    emitirSonido()
} catch (Exception exp) {
    exp.printStackTrace();
}

附带说明一点,抛出Exception并不是一个好主意,最好提供抛出的实际异常,因为调用方可能希望选择并选择处理的异常和重新抛出的异常。

详细了解“异常”踪迹,以获取更多详细信息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM