- 浏览: 378745 次
- 性别:
- 来自: 长春
文章分类
- 全部博客 (319)
- java socket (1)
- java ,IT , (14)
- php Cannot send session cache limiter - headers already sent (1)
- java ,IT ,淘宝 (1)
- mysql java (1)
- wml wap (1)
- jsp (1)
- python (27)
- 第一种方法满足要求 (1)
- java android (2)
- 娱乐,经验 (0)
- java (1)
- 经验 (1)
- linux (4)
- mongodb (1)
- php (2)
- hadoop (1)
- 转载,分享 (1)
- django (1)
- mongo (1)
- java web project (1)
- python3 (1)
- go (1)
最新评论
-
lu56898:
ubuntu中 加了没效果唉
python解决 'ascii' codec can't encode characters -
cooler1217:
DiaoCow 写道不知道LZ想取什么? 但看了下LZ的gre ...
grep awk 应用 -
DiaoCow:
不知道LZ想取什么? 但看了下LZ的grep使用,想了下其实可 ...
grep awk 应用 -
cooler1217:
外国人叫:条条大路通罗马,中国人叫:小鸡不撒尿,各有各的道。完 ...
linux 更改yum地址 -
libla:
个人更喜欢debian极度鄙视yum这种依赖于第三方语言(py ...
linux 更改yum地址
对文件进形切割的处理 考虑到文件在切的时候,还在边写内容,所以掉了shell脚本
源码如下
原创
配置文件内容
knife.cfg
[split_config]
path=c:\
name=test
suf=txt
size=1
unit=K
count=5
源码如下
原创
配置文件内容
knife.cfg
[split_config]
path=c:\
name=test
suf=txt
size=1
unit=K
count=5
#!/usr/local/bin/python # -*- coding: utf-8 -*- ''' Created on 2012-2-15 @author: cooler ''' import ConfigParser from datetime import datetime import os from os.path import getsize c_path = "../conf/knife.cfg" class fileSplit: c_line = 0; # 当前文件在多少行 f_count = 1 # 拆装文件后缀 d_flag = False # 判断文件是否删除 path = "" conf = {} #获取配置文件信息 def getCfg(self): cp = ConfigParser.ConfigParser() cp.read(c_path) self.conf["path"] = cp.get("split_config", "path").strip() self.conf["name"] = cp.get("split_config", "name").strip() self.conf["size"] = cp.get("split_config", "size").strip() self.conf["unit"] = cp.get("split_config", "unit").strip() self.conf["count"] = cp.get("split_config", "count").strip() self.conf["suf"] = cp.get("split_config", "suf").strip() #print self.conf["unit"]=='M' ,self.conf["unit"]=='K' if(self.conf["unit"]=='M'): self.conf['size'] = int(self.conf['size'])*(1024*1024) elif(self.conf["unit"]=='K'): self.conf['size'] = int(self.conf['size'])*(1024) else : self.conf['size'] = int(self.conf['size'])*(1024*1024) #判断是否超过配置文件大小 def overSize(self): size = getsize(self.conf['path']+self.conf['name']+str(self.f_count)+"."+self.conf['suf']) #print size,self.conf['size'] if(size > int(self.conf['size'])): return True else : return False #获取源文件行数 def getLength(self): try: fileHandle = open(self.conf['path']+self.conf['name']+"."+self.conf['suf']) c_list = fileHandle.readlines() return len(c_list) except: print " target file is not exist" #切割文件 def knife(self,c_size): try: fileHandle = open(self.conf['path']+self.conf['name']+"."+self.conf['suf']) c_list = fileHandle.readlines() dtime = datetime.now().strftime("%Y-%m-%d %H:%M:%S") print "has new log " + dtime + " lineCount: " + str(len(c_list)) for i in range(self.c_line,len(c_list)): #print i , (i+1)==len(c_list),len(c_list) #if ((i+1)==len(c_list)): # 设置删除文件调剂 # self.d_flag = True #else : # self.d_flag = False self.newFile(c_list[i]) fileHandle.close() self.c_line = len(c_list) # 一次处理完数据 这个变量可以启用 self.delContentByNum(0, len(c_list)) except: print "target file is not exist" #生成新文件 def newFile(self,strp): try: f = file(self.conf['path']+self.conf['name']+str(self.f_count)+"."+self.conf['suf'], r'a') f.write(strp) f.close() if(self.overSize()): #if(self.d_flag==False): dtime = datetime.now().strftime("%Y-%m-%d %H:%M:%S") print "new file dtime: " + dtime + " count : " + str(self.f_count) self.f_count=self.f_count+1 if( self.f_count>int(self.conf['count'])): self.removeFile() f = file(self.conf['path']+self.conf['name']+str(self.f_count)+"."+self.conf['suf'], r'a') f.close() except: print "no such file ~~ new file failure" #删除前一个文件 def removeFile(self): try: path = self.conf['path']+self.conf['name']+str(self.f_count-(int(self.conf['count'])))+"."+self.conf['suf'] os.remove(path) except: print "no such file ~~ remove failure" #删除元日志文件的前部分 调用linux命令删除源文件中的内容 def delContentByNum(self,fromNum,toNum): common = "sed -i '"+str(fromNum+1)+","+str(toNum)+"d' " + self.conf['path']+self.conf['name']+"."+self.conf['suf']+"" os.popen(common) self.c_line=0 if __name__ == '__main__': fs = fileSplit() while True: fs.getCfg() if(fs.getLength() > fs.c_line): #print fs.getLength fs.knife(fs.conf['size']) #pass #os.remove("c:\test2.txt")
发表评论
-
MacOS M1 安装rocketmq-client-python
2021-11-25 17:26 10011 下载 https://github.com/apache ... -
python克隆数据 copy
2013-03-07 14:16 931现在看到了 Python 优美的设计。那下面的问题是,如果我们 ... -
python Queue模块
2013-02-22 17:07 9722011-04-20 17:11:05| 分类: Pyth ... -
[emerg] 10464#0: unknown directive "ssl"
2013-02-01 11:57 3840#yum install openssl #yum insta ... -
python flask应用 Principal 授权认证
2012-12-14 11:56 1844''' Created on 2012-6-14 ... -
sitecustomize.py 用法
2012-11-19 15:48 24011、在python安装目录下的lib下的site-packag ... -
加菲小小小猫 python菜鸟侃大山第一弹--目录
2012-06-26 13:33 0欢迎来到加菲小小小猫菜鸟讲堂,这期课程共计20课时,主要内容为 ... -
加菲小小小猫 python菜鸟侃大山第一弹--目录
2012-06-26 11:06 4欢迎来到加菲小小小猫菜鸟讲堂,这期课程共计20 ... -
TypeError: 'module' object is not callable 解决
2012-04-17 16:03 3944原文地址:http://hi.baidu.com/bsndhs ... -
python 自定义py文件中方法导入
2012-04-06 14:45 2799例子: 工程 ... -
pymongo 模糊查询
2012-04-01 17:32 5876如果是mongodb的客户端下 直接输入命令 db.devi ... -
pymongo $addToSet 和 $set 区别
2012-03-28 15:35 2430conn = Connection("127 ... -
python解决 'ascii' codec can't encode characters
2012-03-27 18:08 12135异常: 'ascii' codec can't encode ... -
python mongodb time的妙用
2012-03-19 14:41 1033需要把这条日志的时间放到临近的5分钟内, 时间段为:0,5,1 ... -
python ftp上传下载文件,支持断点续传
2012-03-14 11:41 4475功能:ftp断点上传下载 仅供参考: #encodin ... -
python 百分号使用
2012-03-09 12:17 3989原文地址 http://developer ... -
celery+ rabbitMq + python linux是下配置 序
2012-02-27 04:42 940我安装的时候就遇到了很多麻烦,主要是跟中linux包的依赖。。 ... -
logging 使用 python
2012-02-22 17:50 849转载:http://blog.csdn.net/yatere/ ... -
python **args * args
2012-02-20 18:12 793转载 http://jimi68.iteye.com/blo ... -
python paramiko pycropto 安装
2012-02-17 19:30 998http://www.voidspace.org.uk/pyt ...
相关推荐
python脚本拆分bin文件
"读取json文件切割图集"是一个针对这个需求的Python脚本,用于从json配置文件中解析信息,并根据指定规则对图集进行切割,以便于单独使用每个图像。本文将详细讲解这个过程涉及的Python编程知识、json文件处理以及...
标题“txt_wave_cut20181020_时间标签语音切割python_”表明这是一个关于使用Python进行时间标签语音切割的项目,日期为2018年10月20日。描述中提到,该项目利用了PYQT5库来创建用户界面(UI),使得用户能够更直观...
### 用Python实现大文本文件切割的方法 在日常的工作中,我们经常遇到需要处理大量数据的情况,特别是当数据量非常大时,如何有效地管理和处理这些数据成为了一个挑战。有时候,由于软件的功能限制或性能问题,我们...
本教程将详细讲解如何使用Python来读取.plist文件并进行图集的切割,以便在游戏中正确地加载和显示这些小图。 首先,我们需要了解.plist文件的结构。.plist是苹果公司的属性列表(Property List)文件格式,它可以...
在IT领域,文件管理是日常工作中不可或缺的一部分,而文件切割和合并工具则为处理大文件提供了便利。本文将深入探讨这两个概念以及相关的编程实现。 文件切割是指将一个较大的文件分割成若干个小文件,以便于存储、...
在"文件切割.zip"中,可能包含了一个Python脚本或其他程序,用于执行这个功能。Python是一种流行的编程语言,因其简洁和强大的文件操作能力而常被用于此类任务。 在Python中,实现文件切割通常涉及到读取大文件并...
总的来说,“Python基于PIL的png图像切割工具.zip”提供的源码示例是一个基础的图像切割应用,通过PIL库实现了对PNG图像的读取、切割和保存,展示了Python在图像处理方面的强大功能。开发者可以根据自己的需求对这个...
考虑编程实现,利用Python编程语言可以快捷地完成将大文本文件分割成多个小文件,并且拥有非常快的速度. 使用教程,仅需把需要切割的.log文件放入"需分割文件",然后点击data.exe运行即可,(固定值以100w行为一次切割,...
在这个文件中,你可以找到Python代码实现列生成算法的细节,包括数据输入、模型构建、求解过程和结果分析。 学习这个例子,你可以掌握如何利用Python和Gurobi工具解决实际的运筹学问题,理解列生成算法的运作机制,...
"TXT文件切割工具"就是针对这种需求而设计的软件,主要用于处理大尺寸的TXT文本文件,将其分割成多个较小的文件,便于管理和传输。下面我们将深入探讨这个工具及其相关的知识点。 1. TXT文件格式: TXT文件是一种最...
文件切割器是一款简易的编程项目,常用于将大文件分割成多个小文件,便于存储、传输或管理。在计算机科学中,文件切割是一项常见的技术,尤其对于处理大型数据文件时非常实用。以下是对这一概念的详细说明: 1. **...
Python脚本——SplitBySubs,是用于根据SRT字幕文件拆分电影文件的强大工具。这个脚本的出现,极大地便利了视频编辑者和字幕工作者,使得他们能够精确地按照时间轴来分割视频,确保视频内容与字幕同步。在本文中,...
在IT领域,文本处理是一项基础且重要的任务,而“txt 文件切割器 裁剪你的txt文件”这个工具就是专为处理大体积的TXT文本文件而设计的。它允许用户根据自定义的长度或字数标准来分割TXT文件,以满足特定的需求。以下...
在IT领域,文件处理是一项基本技能,而"切g.rar_图片切割_文件切割"的标题和描述暗示了我们将在讨论如何对图片和文件进行切割操作。这种操作通常用于节省存储空间,便于传输,或者在特定场景下进行数据处理。下面...
Arcgis中利用python语言对shp文件批量计算面积,注释详细,只需更改shp文件输入及结果输出文件夹路径即可
此外,对于大文件的处理,除了使用TXT文本文件切割器,还可以考虑使用其他的专业工具,如使用编程语言(如Python)编写脚本进行切割,或者寻找支持大文件处理的专用软件。这些方法可能更适合处理GB级别的大文件,能...
在这个场景中,"python分割plist"指的是使用Python来处理一种特定类型的文件——Plist(Property List),它通常用于存储iOS和macOS应用的数据。 Plist文件是苹果操作系统中广泛使用的文件格式,用于存储配置信息、...
在Python编程语言中,字符串处理是一项基础且重要的任务,其中包括字符串切割操作。字符串切割允许我们将一个长字符串分解成多个部分,通常以特定的分隔符为基准。这在处理文本数据、解析URL、分析文件路径等场景中...
"txt大文件切割"是其中一个关键操作,特别是当面对存储或处理超大文本文件时。以下将详细介绍相关知识点: 1. **大文件切割**:当TXT文件过大,导致无法正常打开、编辑或传输时,我们需要对其进行切割。这通常通过...