linux 文件读取IOError 的处理
系统中有个文件读取出现IO错误,只能读取一部分,无法复制、移动。 学了下python,练习一下文件读写吧,顺便处理一下这个困扰我很久的破文件。
也不能用标准库shutil里的文件copy方法,因为依然会存在 IO 错误。 所以就循环读取,遇到错误就跳过这个字节,简单地绕过了文件那一部分的错误。
文件读取错误
enviroment python 3.2
def copyff():
f = open('Stack_Mute.mp4', 'rb+')
ff = open('stack.mp4', 'ab+')
while True:
try:
buf_copy = f.read(1024)
if buf_copy:
ff.write(buf_copy)
else:
break
except IOError:
print(f.seek(1024, 1))
continue
f.close()
ff.close()
中间显示跳过了几次,最终成功复制,虽然中间少了一点点内容。:cool:
第一个python小程序. 貌似复制出来的文件损坏了,损坏了……:cry: