清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
__author__ = 'muxiaoqing'
import os
import io
class ListRCFile():
"""find all the file name is FliteStr
you can use LoadFileList func to get the files who use FliteStr as postfix
"""
def __init__(self, DirectorPath, FliteStr):
self.DirectorPath = DirectorPath;
self.FliteStr = FliteStr
self.filelist = []
def LoadFileList(self):
for subdir, dirs, files in os.walk(self.DirectorPath):
for file in files:
if file[-len(self.FliteStr):] == self.FliteStr:
self.filelist.append(subdir + '\\' +file)
def LoadFliteFile(self, sflite, filsrc=[]):
for file in self.filelist:
with io.open(file, 'r+') as f:
print file
try:
data = f.read()
if(0 <= data.find(sflite)):
filsrc.append(file)
except:
print 'read file '+ file + ' err!'
f.close()
def Replace(self, file, sSrc, sDesc):
with io.open(file, 'r+') as f:
try:
data = f.read()
data = data.replace(sSrc, sDesc)
f.close()
#write the data to file
with io.open(file, 'w') as f:
f.write(data)
f.close()
except:
print 'read file '+ file + ' err!'
f.close()
""" for test
f = ListRCFile(r'./', '.xml')
files = []
f.LoadFile(files)
for file in files:
print file
"""