照上次一樣,打開每個CSV文件做先做單獨的SQL文件,每個SQL中有1000條插入語句,隨后將29個文件的所有SQL語句都復制粘貼到同一個總的SQL文件中。
CSV文件中的結構是“ID,NUMBER”的結構,其中ID是7位數字,NUMBER是11位數字。這樣用正則式來進行捕捉的時候就比較方便了,在Eclipse的查找/替換功能中所使用的正則式就是“(\d{7}),(\d{11})”,進行替換的文本內容就是“INSERT INTO cards VALUES ('$1','$2',now());”。使用這種方法對29個CSV文件中的內容進行替換。
所有代碼如下:
代碼如下:
import sys, os
def readFile(filename):
file=open(filename, "r")
s=file.read().strip()
file.close()
return s
def writeFile(filename, files):
content=[]
for f in files:
print "reading file ' %s ' " % f
s=readFile(f)
print "read file ' %s ' completed" % f
content.append(s)
print "writing file ' %s ' " % filename
file=open(filename, "w")
file.write("\n/*-----This is a seperating line.-----*/\n".join(content))
file.close()
print "write file ' %s ' completed" % filename
filters=['.txt']
fullpath=os.getcwd();
print "opening directory: ' %s ' " % fullpath
sys.path.append(fullpath)
files = os.listdir(fullpath)
files =[f for f in files if os.path.splitext(f)[1].lower() in filters]
writeFile("beaunet_be_card.sql", files)
有時間的時候重寫這段代碼,加入正則替換功能
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com