import os import sys import string #以指定模式打开指定文件
整站优化包年套餐import os import sys import string #以指定模式打开指定文件获取文件句柄 def getFileIns(filePath,model): print("打开文件") print(filePath) print(model) return open(filePath,model) #获取需要处理的文件 def getProcFile(path): return os.listdir(path) #判断是否满足某个条件如果满足则执行 def isTrue(outFileIns,s): findStr1 = "LINE_COUNT_UPDATE INTEGER := 0;" writeStr1 = "LINE_COUNT_ERROR INTEGER := 0; --错误数据XX条" findStr2 = "DBMS_OUTPUT.PUT_LINE('处理完毕" writeStr2 = "DBMS_OUTPUT.PUT_LINE('错误数据['||LINE_COUNT_ERROR||']条.');" findStr3 = "DBMS_OUTPUT.PUT_LINE('插入数据['||CUR_RESULT.INT_ID||']时发生异常...');" writeStr3 = "LINE_COUNT_ERROR := LINE_COUNT_ERROR+1;" findStr4 = "DBMS_OUTPUT.PUT_LINE('更新数据['||CUR_RESULT.INT_ID||']时发生异常...');"
if s.find(findStr1) != -1:
outFileIns.write(s)
outFileIns.write(writeStr1+"\n") elif s.find(findStr2) != -1:
outFileIns.write(s)
outFileIns.write(writeStr2+"\n") elif s.find(findStr3) != -1:
outFileIns.write(s)
outFileIns.write("\t\t\t\t"+writeStr3+"\n") elif s.find(findStr4) != -1:
outFileIns.write(s)
outFileIns.write("\t\t\t\t\t"+writeStr3+"\n") elif s.find("CS_OSLGIS") != -1:
outFileIns.write(s.replace("CS_OSLGIS","CQ_RMW")) elif s.find("AND A.LONGITUDE ") != -1:
outFileIns.write("\t\t\tAND A.LONGITUDE IS NOT NULL\n\t\t\tAND A.LONGITUDE IS NOT NULL\n\t\t\tAND ROWNUM2\n") elif s.find(") LOOP") != -1:
outFileIns.write("\t\t) LOOP\n") else:
outFileIns.write(s.replace("||')',2","||')',3")) #读取并处理文本 def getAndProc(inFileIns,outFileIns): lines = inFileIns.readlines() for s in lines:
#print(s)
isTrue(outFileIns,s) if __name__=="__main__":
inFileMod = "r" outFileMod = "w" path = "D:\\rmsdata2gis" for tmpFile in os.listdir(path):
inFilePath = path+"\\"+tmpFile
outFilePath = path+"\\BAK_"+tmpFile
inFileIns = getFileIns(inFilePath,inFileMod)
outFileIns = getFileIns(outFilePath,outFileMod)
getAndProc(inFileIns,outFileIns)
inFileIns.close()
outFileIns.close()
转载请注明:seo-网站优化-网站建设 » python处理文本文件并生成指定格式的文件