文件 URI 的文件名中的数字 sign/Hash

Number sign/Hash in filename of file URI

我有以下文件:

C:\path\to\abc#123.txt 

我在 Windows 上为 IE11 开发 Web 前端,将 link 呈现给该文件。我使用以下 URI 编码 #%23:

file:\\c:\path\to\abc%23123.txt

单击 link 时,IE11 会将 # 视为 HTML fragment/anchor 而不是文件名的一部分,因此文件不会打开。如何强制使用编码的 %23 作为文件名的一部分?如果我在浏览器栏中手动输入 URI,文件将按预期打开。

更新:

如果 link 目标设置为 _parent_top,它会起作用,但当设置为 _blank 时不起作用(我需要它做什么)。

我通过使用 JavaScript 为 link 的 onclick 事件找到了解决方法:

var doc = window.open();
doc.location.href = "file:\\c:\path\to\abc%23123.txt";
return false;

这将打开一个新的 window 一个必需的,然后设置带有数字符号的 URI。