我使用 python os.walk() 来获取某些目录中的文件和目录,但是有些文件的名称太长(>300),os.walk() 什么也不返回,使用 onerror 我得到 '[Error 234] More数据可用'。我尝试使用yield,但也一无所获并显示'Traceback:StopIteration'。
操作系统是windows,代码很简单。我用一个目录测试过,如果有长名文件,就会出现问题,而如果用短名重命名长名文件,代码可以得到正确的结果。
我不能对这些目录做任何事情,例如重命名或移动长名称文件。请帮我解决问题!
def t(a):
for root,dirs,files in os.walk(a):
print root,dirs,files
t('c:/test/1')