是否可以使用JavaFX.scene.media.Media从JAR文件中播放MP3或WAV文件?

时间:2014-08-15 21:50:12

标签: java jar media javafx-8

我相当肯定答案是" no",但我想用jar中包含的默认音频文件发布此应用程序。如果可能的话,我希望能够将它们作为资源简单地流式传输到媒体文件中并播放该媒体文件,如下所示:

import javafx.scene.media.Media;
.
.
.
Media m = new Media(this.getClass().resourceAsStream("File.mp3"));
//or
m = new Media(this.getClass().getResource("File.mp3"));

这可能吗?它一直告诉我" Bla bla URL无法转换为String"。 如果它不可能我可以忍受它(我可以将音频文件转储到临时目录并从那里使用它们,然后在程序关闭后删除它们),但我更愿意只使用它他们来自罐子里。

1 个答案:

答案 0 :(得分:0)

According to the documentation,Media的构造函数只能接受一个字符串,而不是一个Stream。该字符串应为URL,可以是JAR URL。

您应该能够在文件系统上的JAR中构建JAR URL ... JAR URL的文档位于http://docs.oracle.com/javase/6/docs/api/java/net/JarURLConnection.html

相关问题