Kir*_*ani 10 windows filenames windows-10
我的问题是,我无法使用特殊字符(如 \ / : * )命名文件夹或文件?" < > | 在基于 Windows 的操作系统中这对我来说非常重要,它给出了包含此类字符的文件/文件夹的名称。
我已经搜索并参考了很多网站,对于这个问题,但都是无望的。我还阅读了 Microsoft 支持页面,他们建议使用其他字符。这是它的链接,https://support.microsoft.com/en-us/kb/177506
我已经尝试过 Alt 按钮 + 这种特殊字符的 ASCII 代码编号,从小键盘键,只是示例重命名文件/文件夹并按 Alt+60(对于 < 字符)它仍然给出消息,文件名不能包含以下任何一项人物: \ / : * ?" < > |
建议我合适的解决方案,以便我可以使用此类特殊字符为我的文件/文件夹命名。
Dav*_*ill 18
这对您来说可能很重要,但您将不得不放手并找到解决问题的不同方法。
处理文件名的 Windows 操作系统函数调用不允许使用这些字符。
它们是特别不允许的,因为它们还有其他用途:
当然,您可以使用不同的操作系统创建名称包含这些字符的文件(只要该操作系统可以读/写 Windows 文件系统)。
但是,您将无法使用任何 Windows 程序对这些文件执行任何操作,并且它们无法理解文件名并会产生错误。
命名约定
以下基本规则使应用程序能够为文件和目录创建和处理有效名称,而不管文件系统如何:
...
使用当前代码页中的任何字符作为名称,包括 Unicode 字符和扩展字符集 (128–255) 中的字符,但以下字符除外:
以下保留字符:
Run Code Online (Sandbox Code Playgroud)< (less than) > (greater than) : (colon) " (double quote) / (forward slash) \ (backslash) | (vertical bar or pipe) ? (question mark) * (asterisk)- 整数值零,有时称为 ASCII NUL 字符。
- 整数表示在 1 到 31 范围内的字符,但允许这些字符的备用数据流除外。有关文件流的更多信息,请参阅文件流。
- 目标文件系统不允许的任何其他字符。
安装cygwin并使用touch.
我还没有测试所有的可能性,但以下工作:
touch :
touch \|
touch \"
touch \>
Run Code Online (Sandbox Code Playgroud)
示例输出:
DavidPostill@Hal /f/test/impossible
$ ll
total 0
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:03 '"'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 :
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 '|'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:07 '>'
Run Code Online (Sandbox Code Playgroud)
如您所见,它们在 Windows 中不可用:
F:\test\impossible>dir
Volume in drive F is Expansion
Volume Serial Number is 3656-BB63
Directory of F:\test\impossible
10/08/2016 21:07 <DIR> .
10/08/2016 21:07 <DIR> ..
10/08/2016 21:03 0 ?
10/08/2016 21:02 0 ?
10/08/2016 21:07 0 ?
10/08/2016 21:02 0 ?
4 File(s) 0 bytes
2 Dir(s) 1,772,601,536,512 bytes free
Run Code Online (Sandbox Code Playgroud)