Python克服了Windows 255路径文件名限制并将目录归档
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python克服了Windows 255路径文件名限制并将目录归档,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2378字,纯文字阅读大概需要4分钟。
内容图文
![Python克服了Windows 255路径文件名限制并将目录归档](/upload/InfoBanner/zyjiaocheng/946/a0cad0e44b2d43138cafe287f6375383.jpg)
我将使用Python备份Windows 7计算机上的目录.我需要尽可能地压缩它.我尚未决定采用哪种压缩方式.
主要问题是目录内部包含数百个文件/目录,这些文件/目录都是级联的,因此在总共255个字符的路径文件名之后我看不到内部.该目录结构是由第三方软件创建的.
为了进行快速测试,我编写了以下代码用于文件夹生成(模拟);
start = time.time()
end = time.time() - start
root_dir = 'C:\test'
os.chdir("C:\test")
iterate = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
while (end<1):
end = time.time() - start
os.system("mkdir " + str(iterate))
os.chdir(root_dir + "\\" + str(iterate))
root_dir = os.getcwd()
结果;
The filename or extension is too long.
Traceback (most recent call last):
File "folder_generate.py", line 21, in <module>
os.chdir(root_dir + "\\" + str(iterate))
WindowsError: [Error 2] The system cannot find the file specified: 'c:\\Python27
\\ABCDEFGHIJKLMNOPQRSTUVWXYZ\\ABCDEFGHIJKLMNOPQRSTUVWXYZ\\ABCDEFGHIJKLMNOPQRSTUV
WXYZ\\ABCDEFGHIJKLMNOPQRSTUVWXYZ\\ABCDEFGHIJKLMNOPQRSTUVWXYZ\\ABCDEFGHIJKLMNOPQR
STUVWXYZ\\ABCDEFGHIJKLMNOPQRSTUVWXYZ\\ABCDEFGHIJKLMNOPQRSTUVWXYZ\\ABCDEFGHIJKLMN
OPQRSTUVWXYZ'
正如在另一个问题中指出的那样,但没有明确回答.
我获得了快速遍历目录内容的测试代码;
fileList = []
fileSize = 0
folderCount = 0
rootdir = "c:\\test"
for root, subFolders, files in os.walk(rootdir):
folderCount += len(subFolders)
for file in files:
f = os.path.join(root,file)
fileSize = fileSize + os.path.getsize(f)
fileList.append(f)
print("Total Size is {0} bytes".format(fileSize))
print("Total Files ", len(fileList))
print("Total Folders", folderCount)
结果是 ;
Total Size is 0 bytes
('Total Files ', 0)
('Total Folders', 9)
无论测试文件夹中有多少个文件夹.有趣的是,我可以通过浏览器无缝浏览并在9.folder之后创建新文件夹.
我不太喜欢wind0z,因此如果有经验的用户可以帮助我克服这一点,我将不胜感激.
只需归档一个非常长的目录.
解决方法:
如果这是主要问题,则可以通过使用subst来限制限额.
看看这个:
如何在Python中进行unicode(它讨论255个限制)-
http://docs.python.org/release/3.1.5/howto/unicode.html
http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx-注意Unicode部分…它说明Windows API的Unicode版本具有更高的限制-以及如何启用它.
看看这个:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/subst.mspx?mfr=true
看一下这个讨论-
http://forums.v3.co.uk/showthread.php?t=223343
除此之外,如果您要做的只是工作而已,而不是为了纯粹的学习和娱乐,我可以告诉您,比起从头开始创建自己的东西,还有更好的解决方案来备份您需要的东西.
内容总结
以上是互联网集市为您收集整理的Python克服了Windows 255路径文件名限制并将目录归档全部内容,希望文章能够帮你解决Python克服了Windows 255路径文件名限制并将目录归档所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。