Windows文件名长度限制

win7x64位环境:

260个长度是作为总的文件名长度限制。

 

例如: 所在文件夹的长度为50

则文件名的长度被限制在210之下,超出的话会被进行截断。

 

如果在程序中的话,超出长度的话MoveFile/CopyFile会返回错误,处理失败。

 

 

例子:

1.       我手动在C:\建立一个文件,使用280个长度进行重命名,实际生成的却是文件名是256个长度

1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklm.txt

 

实际生成文件名:

共计256个长度,加上”C:\”三个长度,共计259个长度,再加一个字符串结束符’\0’,正好260位长度

1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz123

 

2.       把这个文件往”C:\temp”目录copy的时候

报错: 文件名对目标文件夹可能过长,您可以缩短文件名并重试,或者尝试路径较短的位置。

 

意味着,

  1. 要么我们把文件名改短一些,
  2. 要么copy 的目录长度短一些,例如向”D:\”复制就没会有问题。

 

Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu  转载请标明来源 

 

你可能感兴趣的:(文件名长度限制)