许多Windows应用程序(例如,几乎所有.NET应用程序)都无法打开超过260个字符的路径。我批量重命名播客文件列表。我想在剧集的标题后命名每个文件,但标题长达100个字符。这意味着如果用户将文件保存在具有非常长路径的深层目录中,则它们可能会达到限制并且无法在其他应用程序中打开该文件。
我的程序可以接受这么长的文件名,并留给用户处理很长的路径吗? iTunes播放了40个字符,但这看起来非常保守。
感谢Ben Voigt澄清这仅适用于某些应用程序。
答案 0 :(得分:3)
Windows对文件路径的限制不得超过255个字符。
CreateFileA
限制为260个字符。 CreateFileW
支持最多约32760个字符(64kB)的名称。
某些文件系统对最大目录嵌套级别或每个部分的最大长度施加了额外限制。
您可能正在考虑某些流行的Windows程序,这些程序有255个字符限制,但是对于那些警告或用户可配置设置的人来说,可能比添加自己的硬限制更合适。< / p>
答案 1 :(得分:0)
我记得有一个USB文件名不支持超过32个字符(不记得它有哪个FS)。我刚刚在Google上找到了这个链接:http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx
字符数限制也可能不同,具体取决于所使用的文件系统和路径名前缀格式。通过支持向后兼容机制,这进一步复杂化。例如,较旧的MS-DOS FAT文件系统最多支持基本文件名的8个字符和扩展名的3个字符,总共12个字符,包括点分隔符。这通常称为8.3文件名。 Windows FAT和NTFS文件系统不限于8.3文件名,因为它们具有长文件名支持,但它们仍支持8.3版本的长文件名。