python处理文本文件并生成指定格式的文件


Posted in Python onJuly 31, 2014
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 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()
Python 相关文章推荐
Windows下搭建python开发环境详细步骤
Jul 20 Python
Python用模块pytz来转换时区
Aug 19 Python
Python执行时间的计算方法小结
Mar 17 Python
浅谈Django REST Framework限速
Dec 12 Python
神经网络python源码分享
Dec 15 Python
python3+PyQt5图形项的自定义和交互 python3实现page Designer应用程序
Jul 20 Python
Python 解决中文写入Excel时抛异常的问题
May 03 Python
执行Python程序时模块报错问题
Mar 26 Python
初学者学习Python好还是Java好
May 26 Python
如何真正的了解python装饰器
Aug 14 Python
Python编写单元测试代码实例
Sep 10 Python
Python爬虫逆向分析某云音乐加密参数的实例分析
Dec 04 Python
Python中关键字is与==的区别简述
Jul 31 #Python
python处理文本文件实现生成指定格式文件的方法
Jul 31 #Python
Python中zip()函数用法实例教程
Jul 31 #Python
Python中apply函数的用法实例教程
Jul 31 #Python
python新手经常遇到的17个错误分析
Jul 30 #Python
Python使用PyGreSQL操作PostgreSQL数据库教程
Jul 30 #Python
Python代码的打包与发布详解
Jul 30 #Python
You might like
防止MySQL注入或HTML表单滥用的PHP程序
2009/01/21 PHP
php中通过Ajax如何实现异步文件上传的代码实例
2011/05/07 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
javascript 全等号运算符使用说明
2010/05/31 Javascript
在javascript中对于DOM的加强
2013/04/11 Javascript
js使用for循环与innerHTML获取选中tr下td值
2014/09/26 Javascript
jquery 实现返回顶部功能
2014/11/17 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
JQuery中attr属性和jQuery.data()学习笔记【必看】
2016/05/18 Javascript
Nodejs从有门道无门菜鸟起飞必看教程
2016/07/20 NodeJs
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
使用jQuery操作DOM的方法小结
2017/02/27 Javascript
原生js实现鼠标跟随效果
2017/02/28 Javascript
js图片延迟加载(Lazyload)三种实现方式
2017/03/01 Javascript
JS实现新建文件夹功能
2017/06/17 Javascript
JavaScript实现的原生态Tab标签页功能【兼容IE6】
2017/09/18 Javascript
基于mpvue的小程序项目搭建的步骤
2018/05/22 Javascript
Vue 递归多级菜单的实例代码
2019/05/05 Javascript
在layui中select更改后生效的方法
2019/09/05 Javascript
微信小程序开发之获取用户手机号码(php接口解密)
2020/05/17 Javascript
python 基础学习第二弹 类属性和实例属性
2012/08/27 Python
基于Python实现迪杰斯特拉和弗洛伊德算法
2020/05/27 Python
在Python中过滤Windows文件名中的非法字符方法
2019/06/10 Python
使用python实现男神女神颜值打分系统(推荐)
2019/10/31 Python
Python表达式的优先级详解
2020/02/18 Python
python 实现在无序数组中找到中位数方法
2020/03/03 Python
网页布局中CSS样式无效的十个重要原因详解
2017/08/10 HTML / CSS
css3 position fixed固定居中问题解决方案
2014/08/19 HTML / CSS
捷克家电和家具购物网站:OKAY.cz
2020/07/23 全球购物
教师的实习鉴定
2013/12/15 职场文书
歌颂祖国的演讲稿
2014/05/04 职场文书
保送生自荐信
2015/03/06 职场文书
2015年团队工作总结范文
2015/05/04 职场文书
2019大学生实习报告
2019/06/21 职场文书
CSS3实现模糊背景的三种效果示例
2021/03/30 HTML / CSS
NodeJs使用webpack打包项目的方法详解
2022/02/28 NodeJs