我有一个问题,我的应用程序需要图像(jpgs)、音频文件(mp3)和css文件。在IDE中,我可以使用一个字符串来指向它们并使用它们。
我已经阅读了如何将这些文件包含在jar中(使用Project->Properties->Sources->Add Folder)。
然后我读到可以使用“getRessource()”或“getResourceAsStream”。
我试图用“getRessource()”将图像加载到我的jar中…但没有成功。所以我尝试了getRessourceAsStream。这很有效,我能够创建一个JavaFx。来自InputStream的图像。代码:
InputStream bild = getClass().getResourceAsStream("/eins.jpg");
Image img = new Image(bild);
“如何在jar中使用文件”问题的大多数答案都表示,您应该始终使用InputStream。
现在我的问题是,我使用了“scene.getStylesheets().add()”对于这个方法,我需要一个String而不是InputStream。同样适用于“Media m=new Media()”。
要么有一种方法可以使用来自两个资源的InputStream(添加css和音频文件),要么将InputStream转换为我可以用于这两种方法的东西。两者都对我很好。
此代码不适用于我:
URL url = getClass().getResource("/style.css");
scene.getStylesheets().add(url.getFile());
那么,如何使用我的jar中包含的css文件呢。如果可能的话,InputStream对我来说很好,我不需要使用“getResource”。
谢谢你的帮助!如果缺少一些信息,请告诉我。