相对于java项目放置声音文件的位置?

时间:2011-12-13 03:25:07

标签: java audio javasound

这是我第一次实现声音,但我无法弄清楚实际放置声音的位置。我使用Eclipse作为我的IDE,并且我将声音放在名为sounds的文件夹中。

以下代码是我用来创建其中一个audioclip对象的代码:

private final String background = "." + slash + "sounds" + slash + "background.wav";

main(....){
    try {
        backgroundClip = Applet.newAudioClip(new File(background).toURI().toURL());
    } catch (MalformedURLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

我什么都没听到。当我删除try/catch时,我收到错误消息,说它无法找到该文件。我将声音文件夹放在/src/bin中,但都找不到它。我把它放在哪里?

2 个答案:

答案 0 :(得分:2)

项目的基础是src文件夹之上的级别。因此,使用.会将您置于项目文件夹中。

基本上,

. = project_root

./src = default_package
./src/packagename = inside the package named "packagename"

./sounds/background.wav = a .wav file in the sounds folder, in the project_root

使用您当前的路径,您需要将.wav文件放在sounds的{​​{1}}文件夹中。

路径最终会成为project_root

答案 1 :(得分:2)

请参阅this thread,了解为什么应该URLgetResource()获取应用资源,而不是File转换为URL