在浏览器中打开时,本地文件名中的空格将替换为零

Spaces in name of local file are replaced with zeroes when opened in browser

我有一个 .bat 文件可以在浏览器中打开本地文件。本地文件的路径包含空格(不是我选择的):

file:///N:/Users/Firstname%20Lastname/Placeholder%20Report%20Name.html

但是,浏览器将其更改为:

file:///N:/Users/Firstname0Lastname/Placeholder0Report0Name.html

%20 被替换为 0 而不是 </code>,因此 link 不起作用。</p> <p>我试过用 <code>file:\ 和不同的浏览器替换 file:///,但结果是一样的。我错过了什么?我无法更改目标文件的名称或路径。

你必须像这样用另一个转义 %

file:///N:/Users/Firstname%20Lastname/Placeholder%20Report%20Name.html

->

file:///N:/Users/Firstname%%20Lastname/Placeholder%%20Report%%20Name.html

原因是 %2 代表第二个参数,已发送到批处理文件:

yourBat.bat first second

会导致您的浏览器路径蜂鸣

file:///N:/Users/Firstnamesecond0Lastname/Placeholdersecond0Reportsecond0Name.html

因为 %2 被替换为第二个词。

添加另一个 % 后,这将被转义。