Python读写二进制文件
来源:互联网 发布:双十一数据作假 编辑:程序博客网 时间:2024/06/08 10:59
读:
file模式'rb'
import binascii
s_16 = binascii.b2a_hex(f.read(1))#2--->16
写:
file模式'wb'
import struct
f.write(struct.pack('B',int(s_16,16)))#16--->10,此处若不将16进制数据转换成10进制在转换成字节流直接写进文件的话,会与原文件不同
struct.pack用于将Python的值根据格式符,转换为字符串(因为Python中没有字节(Byte)类型,可以把这里的字符串理解为字节流,或字节数组)。
struct.unpack做的工作刚好与struct.pack相反,用于将字节流转换成python数据类型。它的函数原型为:struct.unpack(fmt, string),该函数返回一个元组。
C语言中常用类型与Python类型对应的格式符:
下面是一个简单的文件加密程序,将字节流前四位取出做异或操作连同其余字节写入新文件,再次运行即可解密。
import binasciiimport structprint(" -----encoder-----")frPath = raw_input("Enter source path: ")fwPath = raw_input("Enter target path: ")keys = [9,4,8,6]try: fr = file(frPath,'rb') fw = file(fwPath,'wb') for i in range(4): fr.seek(i) s_16 = binascii.b2a_hex(fr.read(1)) s_10 = int(s_16,16) s_10NO = s_10 ^ keys[i] s_10NOvalue = struct.pack('B',s_10NO) fw.write(s_10NOvalue) fw.write(fr.read())except IOError: print("----------------------------------------") print("Progress error")finally: print("----------------------------------------") print("done successfully") fr.close() fw.close()
- Python读写二进制文件
- python读写二进制文件
- Python:二进制文件读写
- python的二进制文件读写
- python 二进制文件读写
- python读写二进制文件
- 使用Python进行二进制文件读写
- 使用Python进行二进制文件读写
- python/c/c++ 二进制文件读写
- python使用struct进行二进制文件的读写
- 读写二进制文件
- 读写二进制文件
- 读写二进制文件
- 二进制文件读写
- 二进制文件读写
- 二进制文件读写
- 读写二进制文件
- 二进制文件读写
- Hibernate主键的增长策略
- 窗口向上滚动
- sjtu 1004 西西弗斯式的命运
- Android给TextView设置透明背景、圆角边框
- Jumbo Frame
- Python读写二进制文件
- 可爱却也真实的程序注释
- 网页菜单js网址
- Notepad++常用命令——大大提升编码效率
- IP 网络 QoS
- android 软键盘 返回键 消失事件 监听
- 什么才叫精通C++
- 关于DLL工程中存在全局变量可能导致MFC内存泄露误报的原因分析及解决办法
- 黑马程序员--Java入门基础(二)