Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用特殊路径名在java中加载文件_Java_Windows_Escaping_Media Player - Fatal编程技术网

使用特殊路径名在java中加载文件

使用特殊路径名在java中加载文件,java,windows,escaping,media-player,Java,Windows,Escaping,Media Player,我尝试从硬盘上的某个位置播放mp3 该文件位于以下位置: C:\Itunes\Music\Eminem\Eminem显示[Explicit]\18',直到我折叠[Explicit].mp3 此路径中有许多特殊字符,如[和]。当我尝试使用以下代码加载文件时: path = URLEncoder.encode(path, "UTF-8"); Media hit = new Media("file:///"+path); MediaPlayer mediaPlayer = new MediaPlaye

我尝试从硬盘上的某个位置播放mp3

该文件位于以下位置:

C:\Itunes\Music\Eminem\Eminem显示[Explicit]\18',直到我折叠[Explicit].mp3

此路径中有许多特殊字符,如[和]。当我尝试使用以下代码加载文件时:

path = URLEncoder.encode(path, "UTF-8");
Media hit = new Media("file:///"+path);
MediaPlayer mediaPlayer = new MediaPlayer(hit);
mediaPlayer.play();
路径名中出现“非法字符”错误

我的操作系统是Windows8


我对java非常陌生,希望能找到一些帮助。

我相信您需要对URI进行编码


请参阅:

我不明白您要我说什么。我尝试从文件路径加载URI,如file.toUri()并加载从uri到mediaplayer的路径。它不起作用。哦,抱歉,我没有很好地阅读您的代码!是媒体构造函数引发了错误?还是URLEncoder引发了错误?我认为实际上是媒体构造函数引发了错误。请检查此项。您尝试使用的uri似乎不符合rfc2396,ish。。。如果你转到第10页,你会看到方括号被列为“不明智”。我会尝试打印转义路径,并仔细检查所有奇数字符是否确实转义。C%3A%5CItunes5CMusic%5CEminem%5CEminem+5CEminem+Show+%5BExplicit%5D%5C18+%27Till+I+Collapse+%5BExplicit%5D.mp3这是我的编码文件路径。用UTF编码-8.您是否有关于错误的其他信息?堆栈跟踪?