当我输入vlc http://192.168.1.2/new video.mkv
cmd 时,vlc 会尝试打开两个文件。第一个是http://192.168.1.2/new
,另一个是video.mkv
。是文件名中的空格导致了问题吗?如果是,请问原因是什么,我该如何修复它?我注意到,当我将该链接作为锚点放在 html 页面中并使用 Firefox 使用自定义 URI 方案打开它时,Firefox 会用 %20 替换空格,文件就可以正常打开。当我通过 chrome 执行相同操作时,它不会替换空格,并且 vlc 会尝试打开两个不同的文件。这就是我编写锚点标签的方式。
<a href="uritest:http://192.168.1.2/new video.mkv">Video</a>
答案1
URL 不能包含空白文字 - 这必须进行 URL 编码:(http://192.168.1.2/new%20video.mkv
除此之外,你可能需要使用 shell 引用,例如“http://192.168.1.2/new%20video.mkv“)
将其粘贴到浏览器中时它之所以有效,是因为浏览器会为您执行 URL 编码。