我遇到以下代码片段返回 null 的问题:
System.out.println(Logic.class.getResource("effects\\newball.wav"));
我的项目中有一个名为effects的源文件夹。在这个文件夹中有提到的文件。我认为存在语法错误...因为文件就在那里。我必须以这种方式(即使用 getResource)引用我的文件,因为稍后我会将其导出为 jar。
谢谢
最佳答案
您的 effect
目录应该是 src
目录的直接子目录。同样在这种情况下,您需要一个 /
来启动字符串路径。所以你需要这个
System.out.println(Logic.class.getResource("/effects/newball.wav"));
ProjectRoot
src
effect
newball.wav
我通常使用 IDE 所做的只是创建一个新包并将其命名为我想要的文件名称 - 在您的情况下为“效果”。这样更容易。
<小时/>更新
"I did it exatly so, but it still returns null"
对我来说效果很好
package stackoverflow;
public class Test {
public static void main(String[] args) {
System.out.println(Test.class.getResource("/effects/stack_reverse.png"));
}
}
输出:文件:/C:/Android/workspace/StackOverflow/bin/effects/stack_reverse.png
关于java - Logic.class.getResource ("effects\\newball.wav");返回空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21022180/