【发布时间】:2017-11-01 19:19:29
【问题描述】:
我正在使用 Java 开发一个游戏,我有一个类可以将音频文件作为 InputStream 读取,然后通过 AudioPlayer 播放该文件。
我不断收到未找到文件的异常。
我尝试将音频文件放在许多不同的位置,但没有任何效果。
这是我的课程代码:
public void play(String string,int sleep) throws IOException
{
//this part does not recognize file
try {
//System.out.println(System.getProperty());
AS = new AudioStream(new FileInputStream(string));
AD = AS.getData();
loop = new ContinuousAudioDataStream(AD);
}
catch(IOException error){
System.out.print(string +" file not found");
}
AP.start(loop);
}
我传递了一个类似 ("audio/beginning.wav") 的字符串
【问题讨论】:
-
如果文件存在于指定位置,你有权限吗?你能展示/描述你的项目结构吗?
-
音频文件的路径应该相对于源代码的基本目录。例如,如果
audio目录位于包含您的 main 方法的src目录旁边,则您的字符串应该是“../audio/beginning.wav”。在不了解项目结构的情况下,很难知道要通过什么。 -
结构为“project/src/game/main method”,音频文件夹在“project/audio”中
-
您是从 IDE 运行的吗?尝试打印绝对路径来调试它,如我的回答中所述。
-
我正在使用 Eclipse。绝对路径指向项目文件夹。
标签: java eclipse file audio stream