[python-nl] os.remove fout
Robert Segaar
rw.segaar at xs4all.nl
Tue Apr 15 21:54:30 CEST 2008
Onderstaand programma heeft tot doel vaste IP adressen in HTML bestanden te vervangen door andere vaste IP adressen.
De regel os.remove(fname) genereert een fout WindowsError: [Error 32] Het proces heeft geen toegang tot het bestand omdat het bestand door een ander proces wordt gebruikt: 'c:/floep/soep.htm'
is close onvoldoende om het bestand vrij te geven?
import os,sys,time
import fileinput,string
search = "10.0.0.222"
replace = "10.0.0.223"
from os.path import join, getsize
for root, dirs, files in os.walk("c:/floep/"):
for name in files:
fname = os.path.join(root, name)
ftemp = os.path.join(root, name+".$$$")
if string.find(fname,".htm") is not -1:
print fname
infile =open(fname)
if os.path.exists(ftemp):
os.remove(ftemp)
outfile = open(ftemp,"w")
outfile.write(infile.read().replace(search,replace))
outfile.flush
outfile.close
outfile.flush
infile.close
time.sleep(1)
os.remove(fname)
os.rename(ftemp,fname)
------------- volgend deel ------------
Een HTML-bijlage is verwijderd...
URL: http://mail.python.org/pipermail/python-nl/attachments/20080415/38534a5a/attachment.htm
More information about the Python-nl
mailing list