为什么 Windows 中的文件夹或文件名不能以空格结尾?

Pol*_*Pol 2 windows ntfs path filenames

我今天学了些新东西。当我尝试在 Visual Studio 中创建新文件夹“文件夹”(无引号)时,出现错误:

目录名称不能包含以下任何字符:

:*?| " < >

但是我的文件夹名称没有任何这些字符。所以我尝试在 Windows 资源管理器中创建这个文件夹,它从末尾剥离空间并创建文件夹“文件夹”而不是“文件夹”。同样的情形md指挥同样适用于文件名。为什么 Windows 中的文件夹或文件名不能以空格结尾?

我在 NTFS 分区(Windows 8.1)上试过这个。

小智 7

来自 Microsoft命名文件、路径和命名空间文章:

不要以空格或句点结束文件或目录名称。尽管底层文件系统可能支持此类名称,但 Windows 外壳和用户界面不支持。但是,可以将句点指定为名称的第一个字符。例如,“.temp”。

  • @Ramhound - 来自 kernel32.dll (不是 shell 部分)的 CreateFileA 不允许创建(打开)两个名称仅在末尾有空格不同的文件。祝你有美好的一天。 (2认同)