python处理文本文件实现生成指定格式文件的方法
作者:shichen2014 发布时间:2022-01-07 21:41:43
本文所述实例为Python处理文本文件并生成指定格式文件的方法,具体实现功能代码如下所示:
import osimport sysimport 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 ROWNUM<2\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()
猜你喜欢
- 性能首先,FCKEDITOR的性能是非常好的,用户只需很少的时间就可以载入FCKEDITOR所需文件.对于其他在线编辑器来说,这几乎是个很难
- 前言:macOS自带的Apache可以提供通过http://localhost:8081访问本地文件服务,那么python有没有类似功能的库
- 最新在学习Python的基础入门系列课程,今天学习到使用python 的内置库smtplib发送邮件内容。使用Python发送邮件步骤简单:
- 首先是三张表, CNo对应的是课程,在这里我就粘贴了。主表人名表按照常规查询SELECT s.SName, c.CName,s2.SCgra
- 本文列举了所有关于PHP语言中使用socket相关服务的一些函数。注意使用如下函数之前,你需要确保你的socket已打开,如果你没有打开,请
- 本文实例讲述了JS实现合并json对象的方法。分享给大家供大家参考,具体如下:一、问题:求json对象合并的方法var a ={"
- 有。试试下面这个程序:saveip.asp<%Server.Scripttimeout = 1000On 
- 一、判断大型网站的标准1、pv(page views)网页的浏览量概念 一个网站所有的页面,在24小时内被访问的总的次数。千万级别,百万级别
- 修改my.ini或my.conf,将sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_US
- 现在很多地方都需要用到关键词过滤功能。比如一般的服务器都不允许一些词出现在网页上,站长有时候会对在本网站发布信息的内容进行一个广告过滤等。雨
- 思维导图:效果(语句版):源码:# -*- coding: utf-8 -*-"""Created
- 本篇,我们学习PyQt5界面中拖放(Drag 和Drop)控件。拖放动作在GUI中,拖放指的是点击一个对象,并将其拖动到另一个对象上的动作。
- 1. 前言熟悉 Django 的朋友应该知道,我们可以通过「 inspectdb 」命令将数据库表反向生成 Model 并写入到文件中去比如
- 1、正则表达式包括两部分①定义正则表达式的规则;②正则表达式的模式(i/g/m);2、声明正则表达式① 字面量声明: var reg = /
- 在 Go 语言中,map 是一种非常常见的数据类型,它可以用于快速地检索数据。Go 语言中的 map 与其他编程语言中的类似的数据类型相比,
- 光线追迹得益于计算机的计算的能力,通过追踪具有代表性的光线的传播轨迹,可以更加精确地描述光学系统的性能,光线追迹方法也因此大展其能,诸如Ze
- 前一段时间导师叫我写一个批处理的小程序,就是循环修改辐射传输模型软件MODTRAN的输入参数,然后运行MODTRAN软件进行计算,输出需要的
- 译注:前两天看到一篇不错的英文文章,叫做 How browsers work,该文概要的介绍了浏览器从头到尾的工作机制,包括HTML等的解析
- 本文实例分析了php中ob_flush函数和flush函数用法。分享给大家供大家参考。具体如下:ob_flush()函数: 取出PHP bu
- 如IP为192.168.1.111现要截取第二个.之前的值,得到结果192.168,很多网站都只显示前面2个值 &nb