python学习之路------文件分割工具

用python写的文件分割工具

废话不多直接上代码。

#!/usr/bin/python2.7


import os 
import sys
import os.path

def splitfile(path, size):
	if not os.path.isfile(path):
		print(path, 'is not a file!!')
		sys.exit()
	src_file = open(path, 'rb')
	src_dir, src_name = os.path.split(path)
	src_size = os.path.getsize(path)
	split_namber = (src_size + size - 1) / size
	print(src_dir, src_name, src_size, split_namber)
	index = 0
	while index < split_namber:
		if src_dir == '':
			src_dir = '.'
		dst_filename = src_dir + '/' + str(index) + '_' + src_name
		dst_file = open(dst_filename, 'wb')
		src_file.seek((size * index), os.SEEK_SET)
		copysize = 0
		size_unit = 0
		while copysize < size:
			if copysize + 1024 <= size:
				size_unit = 1024
			else:
				size_unit = size - copysize
			read_data = src_file.read(size_unit)
			if read_data < 0:
				break;
			dst_file.write(read_data)
			copysize += size_unit
		dst_file.close()
		print(os.path.getsize(dst_filename), index, size)
		index = index + 1
	src_file.close()
	print('\tdone!!!')

print(sys.argv)
Size = int(sys.argv[2]) * 1024 * 1024
splitfile(sys.argv[1], Size)

主要用了文件对象的几个操作函数,以及几个os.path下面的几个函数

os.path.getsize(path) //获取路径文件的大小

os.path.split(path) //分割路径为两部分 如 a/b/c.txt 将会被分割成 (a/b  , c.txt)

你可能感兴趣的:(python,文件操作,os.path,文件对象)