python怎么实现任意位置文件分割

  介绍

这篇文章将为大家详细讲解有关python怎么实现任意位置文件分割,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

<强>应用场景

在嵌入式开发中,常常需要将一个二进制文件分割成多个文件,或者将一个二进制的某块区域抓成一个单独文件。本篇博客以python为例,实现了以上需求,

<强>实现代码

# !/usr/bin/python   “““   。/file_split.py,, just  for 测试;   “““      import 系统   import 操作系统   import 再保险   得到os.path  import 加入      得到array  import 数组      import  datetime      时间=ORIGINAL_BIN  & # 39; test.bin& # 39;      时间=SPLIT_BIN1  & # 39;输出/1.本# 39;   时间=SPLIT_BIN2  & # 39;输出/2.本# 39;   时间=SPLIT_BIN3  & # 39;输出/3.本# 39;         def 主要(argv):   print 才能“时间:“,datetime.datetime.now ()   print 才能“平台:“os.name      if 才能;(os.path.exists(& # 39;输出# 39;),==,False):   ,,,os.mkdir(& # 39;输出# 39;)      originalBin =,开放才能(ORIGINAL_BIN & # 39; rb # 39;) .read ()   originalBin 才能=,数组(& # 39;c # 39;,, originalBin)      时间=bin1 才能;originalBin [0 x0:0x4000]   开放才能(SPLIT_BIN1 & # 39; wb + & # 39;) .write (bin1)      时间=bin2 才能;originalBin [0 x130000:0x130000 + 0 x2000]   开放才能(SPLIT_BIN2 & # 39; wb + & # 39;) .write (bin2)      时间=bin3 才能;originalBin [0 x160000:0x160000 + 0 x2000]   开放才能(SPLIT_BIN3 & # 39; wb + & # 39;) .write (bin3)      ,return  0         if  __name__ ==, & # 39; __main__ # 39;:   主要的才能(sys.argv)

<强>代码解析

if  (os.path.exists(& # 39;输出# 39;),==,False):   os.mkdir才能(& # 39;输出# 39;)

检查当前目录是否存在输出目录,如果没有就创建输出目录,文件分割后的本就存放在输出目录;

originalBin =,开放(ORIGINAL_BIN & # 39; rb # 39;) .read ()   originalBin =,阵列(& # 39;c # 39;,, originalBin)

调用开放打开ORIGINAL_BIN路径的文件,并且读到originalBin这个变量中;将originalBin中的数据转化成数组,并且数组单个元素为字符单字节;

bin1 =, originalBin [0 x0:0x4000]   打开(SPLIT_BIN1 & # 39; wb + & # 39;) .write (bin1)

将originalBin数组中的0 x0到0 x4000地址的数据初始化给bin1,然后创建SPLIT_BIN1路径的文件,将bin1写入该文件;bin2和bin3同理。

关于“python怎么实现任意位置文件分割”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。

python怎么实现任意位置文件分割