这个问题在很多地方被问到,有无数的小变化。(例如Java - getClassLoader().getResource() 让我发疯。)我仍然无法让它工作。
这是一个代码片段:
String clipName = "Chook.wav";
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
// URL url = classLoader.getResource(clipName);
URL url = new URL("file:///Users/chap/Documents/workspace/the1620/bin/ibm1620/" + clipName);
ais = AudioSystem.getAudioInputStream(url);
这行得通——请注意,我已经硬编码了包含剪辑文件的目录的路径,该文件就在那里,并且与我的 .class 文件位于同一目录中。唉,注释掉的代码只是为 url 返回一个空值。
大多数其他帖子似乎都在处理 getResourceAsStream()。我想我应该使用 getResource()。这有区别吗?
不可能这么难。有什么线索吗?