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文本格式_python处理文本文件并生成指定格式的文件相关推荐

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

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  2. python处理文本文件实现生成指定格式文件的方法

    python处理文本文件实现生成指定格式文件的方法 关于python处理文本文件实现生成指定格式文件,很多朋友都不知道该怎么弄. 下面是具体代码,希望对大家有帮助 可以在下面复制: import os ...

  3. python文本解析_Python之文本文件解析

    最近的工作主要是组件兼容性测试,原有的框架有很多功能还不完善,需要补充!比如,需要将AutoIt脚本的执行结果写入到Excel中,最后的解决方案是使用本地的log来解析这个结果! 增加了如下一个类来完 ...

  4. 从MySql 数据库中导出数据并生成指定格式xml文件

    最近网站需要做数据迁移,需要我将网站的数据从mysql数据库中导出,并按照要求生成指定格式的xml文件. xml格式要求: 代码: package com.epsoft.gjjisp;import j ...

  5. java根据pdf模板生成指定格式的pdf文件

    java根据pdf模板生成指定格式的pdf文件 一.工具准备 事先得准备好Adobe Acrobat DC,这是一款专门编辑pdf的工具,小编已经给大家准备好了. 链接:https://pan.bai ...

  6. python 文本向量化_Python文本特征抽取与向量化算法学习

    本文为大家共享了Python文本特征抽取与向量化的详细代码,供大家参考,详细内容如下 假设我们刚看完诺兰的大片<星际穿越>,设想怎么让机器来自动分析各位观众对电影的评价到底是"赞 ...

  7. python文本数据处理_python 数据处理 对txt文件进行数据处理

    原博文 2019-10-19 17:30 − 数据: 对txt文件进行数据处理: txt_file_path = "basic_info.txt" write_txt_file_p ...

  8. python创建时间序列_python时间序列按频率生成日期

    有时候我们的数据是按某个频率收集的,比如每日.每月.每15分钟,那么我们怎么产生对应频率的索引呢?pandas中的date_range可用于生成指定长度的DatetimeIndex. 我们先看一下怎么 ...

  9. python文本编辑器_python最好的ide和文本编辑器

    python文本编辑器 I cannot stress enough how important the right IDE (Integrated Development Environment) ...

最新文章

  1. win10突然只剩下c盘和d盘了_电脑C盘爆满飘红?系统卡?试试这两种解决办法
  2. Py之GUI:Python下各种GUI(图形用户界面)简介、使用优缺点对比
  3. Spring Boot中如何干掉if else
  4. 微信序列号生成器架构设计及演变
  5. css transtion不生效_CSS中transition属性不起作用的原因及解决方法
  6. 新云网、5G、Wi-Fi 6 Plus,探秘2021通信展上的锐捷网络黑科技
  7. office2010 启动man_Office2010打开很慢怎么回事如何解决 Office2010无法安装怎么解决办法...
  8. 疫情下的国内云市场,正是大展拳脚的好时机!
  9. 28 个必备的 Linux 命令行工具
  10. Material Design 控件知识梳理(4) FloatingActionButton
  11. 用代理IP进行简单的爬虫——爬高匿代理网站
  12. Python 的 setup.py 详解
  13. 黑群晖vmm专业版_教你群晖用自带的VMM虚拟机安装精简版win10系统教程
  14. VS2013 由Unicode字符集切换为多字节字符集后编译报错
  15. PreaparedStatement中execut的使用
  16. 【R语言】必学包之lubridate包
  17. sequence生成器写法
  18. arduino智能浇花系统_基于Arduino单片机的智能浇花器
  19. 辐射避难所ol服务器维护,辐射避难所Online8月3日更新内容 育普雷斯顿up卡池
  20. [云原生]~云原生简介

热门文章

  1. bboss session自定义session id生成机制介绍
  2. 指向结构体变量的指针变量
  3. 浅谈矩阵分解在推荐系统中的应用
  4. PC-如何禁用 Cookie
  5. ulimit命令学习
  6. Vivado入门创建工程之----自定义ip及其使用
  7. 今天小小的总结一下最近的小程序中的问题
  8. 拟合三维点平面matlab程序
  9. Ubuntu系统(四)-修改主机名和配置DNS上网
  10. tnsname.ora 个参数解释