代码节选...withopen(gcode_path,'r')asf:forlineinf:parser.execute_line(line)pos+=1ifpos>maxline/2:(keepgoing,skip)=dlg.Update(pos,_('Pleasewait...'))else:(keepgoing,skip)=...
代码节选
...
with open(gcode_path,'r') as f:
for line in f:
parser.execute_line(line)
pos+=1
if pos>maxline/2:
(keepgoing,skip)=dlg.Update(pos,_('Please wait...'))
else:
(keepgoing,skip)=dlg.Update(pos)
if not keepgoing:
break
dlg.Destroy()
if keepgoing:
message_dlg = wx.MessageDialog(None,filename+_("has been saved to:\n")+dest,_('Finished'),
wx.OK|wx.ICON_INFORMATION)
message_dlg.ShowModal()
message_dlg.Destroy()
else:
os.remove(dest)
主要就是有一个进度条窗口,点击取消的时候,终止文件处理,我觉得此事应该把之前的文件删除才对,但是使用os,remove()总是会提示windows error 32,32错误不是应该是文件未关闭吗?我用isclosed检查,返回的值是true,说明关闭了吧,何况用的还是with as。
请高人指点一下,应该如何删除文件
展开