我正在设计一个数据库表,它将保存上传文件的文件名。windowsxp或Vista使用的NTFS中文件名的最大长度是多少?


当前回答

文件名的各个组成部分(即路径上的每个子目录和最终文件名)限制为255个字符,总路径长度限制为大约32,000个字符。

但是,在Windows上,不能超过MAX_PATH值(文件259个字符,文件夹248个字符)。详情见http://msdn.microsoft.com/en-us/library/aa365247.aspx。

其他回答

我无法在WS 2012资源管理器中创建名称+句点+扩展名超过224个字符的文件。别朝送信的开枪!

在同一服务器的CMD中,我不能创建一个超过235个字符的名称:

系统无法找到指定的路径。

在资源管理器中创建的具有224个字符名称的文件无法在notepad++中打开-它只是产生了一个新文件。

实际上是256,参见文件系统功能比较,限制。

重复http://fixunix.com/microsoft-windows/30758-windows-xp-file-name-length-limit.html上的帖子

假设我们说的是NTFS而不是FAT32,“255个字符 for path+file”是资源管理器的限制,而不是文件系统本身。 NTFS支持最多32,000个Unicode字符长的路径 组件最多255个字符。 资源管理器和Windows API-限制260个字符 路径,包括驱动器号、冒号、分隔的斜杠和 终止空字符。可以读取更长的路径 如果你用“\\”开头

如果你读了上面的文章,你会发现你可以确定的第五件事: 至少找到一个顽固的电脑用户!

255个字符。

http://en.wikipedia.org/wiki/Filename

官方文档的这一部分明确表示,对于NTFS, exFAT和FAT32,它是255个Unicode字符,对于UDF,它是127个Unicode或254个ASCII字符。

除此之外,最大路径名长度总是32,760个Unicode字符,每个路径组件不超过255个字符。

我把这个加到上面批准的答案中。

需要说明的是,人们之所以认为它是255-260个字符,是因为Windows资源管理器只支持这一个字符。如果文件名比这个长,它就会出错。然而,程序可以读取和写入更长的文件名(这就是Explorer最初抱怨的长度)。在这种情况下,微软的“推荐修复”是在编写该文件的原始程序中打开该文件并重命名它。