new FileInputStream("C:\\Users\\Adam\\Documents\\NetBeansProjects\\TicTacToe_3.0 beta\\src\\resources\\System Shock 2 soundtrack Med Sci 1.mp3");
BufferedImage bf = ImageIO.read(new File("C:\\Users\\Adam\\Documents\\NetBeansProjects\\TicTacToe_3.0 beta\\src\\images\\black-squareMod.jpg"));
上面的两行代码从给定的路径中获取某种资源。我想更改它们,以便它们引用同一 Netbeans 项目中的包,其中包含相同的资源。
例如,
FileInputStream();
...正在获取音频文件。
BufferedImage bf = ImageIO.read(new File());
...正在获取 .jpg 图像。
这两个文件位于同一 Netbeans 项目中名为“resources”的包中。如何更改指定的路径,以便它们直接进入这些包,而不是通过我的硬盘?
谢谢。
我找到了解决方案:
new FileInputStream("C:\\Users\\Adam\\Documents\\NetBeansProjects\\TicTacToe_3.0 beta\\src\\resources\\System Shock 2 soundtrack Med Sci 1.mp3");
已更改为
ClassLoader.getSystemResourceAsStream("resources/System Shock 2 soundtrack Med Sci 1.mp3");
这负责音频。
对于BufferedImage对象:
BufferedImage bf = ImageIO.read(new File("C:\\Users\\Adam\\Documents\\NetBeansProjects\\TicTacToe_3.0 beta\\src\\images\\black-squareMod.jpg"));
已更改为
BufferedImage bf = ImageIO.read(ClassLoader.getSystemResource("images/black-squareMod.jpg"));
完美运行。
我是一名优秀的程序员,十分优秀!