python处理文本文件实现生成指定格式文件的方法
发布时间:2020-05-24 05:58:49 所属栏目:Python 来源:互联网
导读:本文所述实例为Python处理文本文件并生成指定格式文件的方法,具体实现功能代码如下所示:
|
本文所述实例为Python处理文本文件并生成指定格式文件的方法,具体实现功能代码如下所示:
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("tttt"+writeStr3+"n")
elif s.find(findStr4) != -1:
outFileIns.write(s)
outFileIns.write("ttttt"+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("tttAND A.LONGITUDE IS NOT NULLntttAND A.LONGITUDE IS NOT NULLntttAND ROWNUM<2n")
elif s.find(") LOOP") != -1:
outFileIns.write("tt) LOOPn")
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()
(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Java. How to use headless browsers for crawling web and
- python基于xml parse实现解析cdatasection数据
- 在OS X 10.7上,NumPy不会从1.5.1升级到1.6.2
- python – 为什么三元运算符比.ts更快?
- python小技巧之批量抓取美女图片
- python-在一个屏幕内的kivy类之间切换
- 一键搞定python连接mysql驱动有关问题(windows版本)
- Python生成器(Generator)入门实例
- python – 为Django应用程序中的用户添加动作的日志条目
- 简单谈谈Python中的元祖(Tuple)和字典(Dict)
