我正尝试在Java中创建媒体播放器。 为了做到这一点,我传递了一个字符串在我的文件所在的地方,但我得到一个错误。在Java中传递文件位置的错误
操作系统:MacOSX的
IDE:Pycharm
@Override
public void start(Stage primaryStage) throws Exception{
String file="~/Users/ViditShah/IdeaProjects/MediaPlayer/src/sample/1.mp4";
Player player = new Player(file);
Scene scene = new Scene(player,720,480, Color.BLACK);
primaryStage.setScene(scene);
primaryStage.show();
}
播放器类:
public class Player extends BorderPane {
Media media;
MediaPlayer player;
MediaView view;
Pane apane;
Player(String file)
{
media =new Media(file);
player = new MediaPlayer(media);
view = new MediaView(player);
apane.getChildren().add(view);
setCenter(apane);
}
}
该错误是在解析文件的字符串被显示。 我想我在定位我的文件路径时遇到了错误,无法找到解决方案。
您的主目录中有一个名为'Users'的文件夹?这似乎不太可能。我不知道'Player'是什么,并且不知道这个问题是不是真的可以回答这个问题,但是JavaFX中的大多数方法都希望某种资源能够传递一个URL(或URL的字符串形式),而不是文件路径。 –
〜是shell而不是Java。您必须使用完整路径或getenv $ HOME。或者,您可以使用“user.home”属性。 – mko
@James_D我已添加播放器类代码,并在桌面上也有一个媒体文件的副本。 我需要路径来喂养字符串 – vidit02100