【问题标题】:How to target a file (a path to it) in Java/JavaFX如何在 Java/JavaFX 中定位文件(路径)
【发布时间】:2012-04-21 04:19:45
【问题描述】:

这可能是一个简单的,但我似乎无法让它工作。我正在用 JavaFX 制作视频播放器,但我不知道如何定位要播放的文件(我不知道正确的语法)。预先感谢您的帮助。这是我正在尝试运行的代码示例>

    Media media = new Media("trailers/trailer.mp4");
    MediaPlayer player = new MediaPlayer(media);
    MediaView view = new MediaView(player);

顺便说一句,文件在项目文件夹中,然后是预告片/预告片.mp4。哦,我正在运行 Windows。

【问题讨论】:

    标签: file path media javafx-2


    【解决方案1】:

    1 如果媒体源文件在同一个项目包中,请使用此选项。

     Media media = new Media("trailer.mp4");
    

    2 如果媒体源文件在同一个项目子包[项目主包中名称为“trailers”的包],请使用此选项

     Media media = new Media("trailers/trailer.mp4");
    

    3 如果媒体源文件在其他位置[使用完整路径],请使用此选项。

     Media media = new Media("file:///e:/trailers/trailer.mp4");
    

     Media media = new Media("file:///E:/trailers/trailer.mp4");
    

    注意:应使用 3 个斜杠,即“file:///”以避免错误“MediaException: MEDIA_INACCESSIBLE : e/E”

    【讨论】:

      【解决方案2】:

      将您的文件放入源文件夹并将其作为资源加载:

      Media media = new Media(getClass().getResource("trailer.mp4"));
      

      或使用完整路径

      Media media = new Media("file://c:/trailers/trailer.mp4"));
      

      另外,请注意 JavaFX 2.0 仅支持 FLV 编解码器。对于 mp4(使用 H.264 编解码器),您需要使用 JavaFX 2.1 或更高版本。

      【讨论】:

      • 以防万一,更新。 JavaFX 8.0 和 JavaFX 9.0 也支持带有 H.264 的 MP4。
      【解决方案3】:

      如果您想从项目包中加载媒体:

      File file=new File("trailer.mp4");
      Media media=new Media(file.toURI().toString())
      

      【讨论】:

        猜你喜欢
        • 2018-11-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-12
        • 2015-06-04
        • 2018-12-15
        • 2015-08-11
        相关资源
        最近更新 更多