如果文件名包含非字母字符,如何在JavaFX中播放媒体文件?

时间:2013-09-12 05:20:59

标签: javafx

如果我们在此过程中传递JavaFX中任何媒体文件的名称:

    String MEDIA_URL = "C:\\Users\\Dragon-i\\Desktop\\cole\\12.mp4";
    MEDIA_URL = "file:///" + (MEDIA_URL).replace("\\", "/").replaceAll(" ", "%20");

    Media media = new Media(MEDIA_URL);
    final MediaPlayer player = new MediaPlayer(media);
    final MediaView view = new MediaView(player);
    player.play();

然后玩家玩得很好。 但是如果文件包含任何字符,如“[”或“]”或类似的其他内容,则播放器不起作用。 应该怎么做来解决像这种操作这样的各种问题?

1 个答案:

答案 0 :(得分:1)

使用URI类来解析本地媒体文件路径而不是字符串操作:

private File file = new File("your local media file path");
private final String MEDIA_URL = file.toURI().toString();

然后在MEDIA_URL构造函数中传递Media

Media media = new Media(MEDIA_URL);

这不是我测试过的代码。但无论其他问题如何,都应该有效。