我已将一个驱动器的内容复制到另一个驱动器,只需ctrlc从源驱动器的根目录复制 ( ) 所有文件和文件夹并粘贴 ( ctrlv)。在验证复制是否成功完成时,我注意到 Windows 会自动删除文件名开头的空格。即:
D:\Samples\\Halion\80s Keyboards & Samples\E-MU Emax\akai s5000\__SN_EFX\ sn.akp
变成
F:\Samples\\Halion\80s Keyboards & Samples\E-MU Emax\akai s5000\__SN_EFX\sn.akp
我发现的文档对于是否允许/不鼓励这样做含糊不清:
不要以空格或句点结尾文件或目录名称。虽然底层文件系统可能支持此类名称,但 Windows shell 和用户界面不支持。不过,可以将句点指定为名称的第一个字符。例如,“.temp”。
不,在 Windows 11 中,以空格开头的文件名并不违法
如果您用引号将文件名引起来,Windows 确实允许您从命令行创建带有前导空格的文件名。
在命令行中输入:
在我的 Windows 11 PC 上,我得到以下信息:
我可以在 Windows 资源管理器中找到这些文件并在记事本中打开它们。
正如相互矛盾的答案所暗示的那样,不建议这样做,因为不能保证所有程序都能正确处理这些文件名。
即使在 Windows 11 中,Windows 文件资源管理器也无法创建以空格开头的文件名。正如您所体验到的,Windows 资源管理器会从文件名中删除所有前导空格。
从技术上讲,NTFS 确实支持以空格开头的文件名,但 Windows 文件资源管理器会直接删除这些文件名。您可以使用其他工具或从命令提示符创建此类文件,但对于支持此类文件的其他应用程序(包括备份工具),一切都无从谈起。
Windows 11 Explorer 确实支持在文件名中使用 Unicode 字符,因此理论上,您可以使用已安装字体中显示为空白的另一个 Unicode 字符(或创建自定义字体来实现此目的)。但我并不推荐这样做,因为这很不明智,而且在尝试处理文件时无疑会导致混乱。
在 Windows 11 中,文件系统在技术上允许以空格开头的文件名,但 Windows shell 会自动删除前导空格。虽然这并不违法,但不建议这样做,因为 UI 无法正确处理它们,并且可能会导致文件显示和访问问题。