51

我从上传文件名中带有冒号的文件的客户那里收到错误,即C:/uploads/test : doc.html

我假设某些 Unix 或 Linux 系统正在生成该文件,但我不确定用户如何使用无效的文件名保存它们。我编写了一段代码,应该在上传时重命名文档。我的问题是我无法测试它,因为我无法在 Windows 上获取文件名中有冒号的文件。

4

7 回答 7

93

我发现了一个与冒号非常相似的字符,“꞉”它是一个 unicode 字符,称为修饰符字母冒号。这没有像全角冒号那样的空格,并且与常规冒号几乎完全相同,但符号有效。您可以从上面复制并粘贴它,也可以使用代码点U+A789

于 2014-08-24T23:27:53.010 回答
18

对于 Windows 文件名,冒号是无效字符。您将无法在文件名中允许“:”,但您可以解决它。

你可以做你已经做过的事情;创建一个脚本,用 UNIX 端的有效字符替换这些无效字符。或者,您可以使用文件名字符翻译在 Windows 服务器上处理此问题:http: //support.microsoft.com/kb/289627

于 2012-04-30T15:49:55.893 回答
8

我发现的保留字符的其他替换是

” ‹ › ⁎ ∕ ⑊ \︖ ꞉ ⏐</p>

例如在python中你会这样做:

fixed_name = orig_name.replace('\\\\','⑊')
forbidden_characters = '"*/:<>?\|'
unicode_characters = '”⁎∕꞉‹›︖\⏐'
for a, b in zip(forbidden_characters, unicode_characters):
    fixed_name = fixed_name.replace(a, b)
于 2018-07-26T23:48:22.760 回答
6
于 2014-07-24T23:11:42.637 回答
2

您可以使用 CJK(中文/日文/韩文)之一

“:”

这是非常通用的。

于 2019-03-22T05:32:35.837 回答
0

目前,您将使用 WSL,网址获取说明:https ://docs.microsoft.com/en-us/windows/wsl/install-win10 。

然后,您可以在您的 Linux 发行版中创建一个冒号。

于 2021-04-10T01:20:14.677 回答
-2

如何使用看起来像冒号的符号命名文件或文件夹

在下面的示例中,字体大小为 12,但符号除外,该符号设置为下标、粗体,字体大小为 16。冒号状符号的字符代码为 02F8。

下标设置的原因是将符号的位置相对于其垂直位置更低。应用粗体和更大的字体设置,以便符号在页面上更容易识别,并且在文件或文件夹名称中使用时没有影响。

示例:(C˸) 符号 – 下标、Calibri、粗体和 16 号字体。

*使用 Windows 7 和 Word 2007

于 2018-09-03T03:44:39.047 回答