python - 写入二进制文件python时的附加数据
问题描述
我正在尝试使用 python pickle 将字符串消息转储到二进制文件中,但是当我读取文件时,事实证明我在文件的开头和结尾有额外的数据。你能帮我了解如何删除它们吗?
Python代码:
import pickle
from array import array
msgAscii = 'N Schmidt Alfred 01.07.1953 1001 M Dorfner \\\\Station_1\\PM \\\\*\\SIDEXIS \r\n'
msgAscii = msgAscii.replace(' ','\x00')
msgAsciiLength = len(msgAscii) + 2
arrayLength = [(msgAsciiLength>>(8*i))&0xff for i in range(1,-1,-1)]
msgAscii = chr(arrayLength[0]) + msgAscii
msgAscii = chr(arrayLength[1]) + msgAscii
pickle.dump(msgAscii,open('sidexis.sdx', 'wb+'))
十六进制文件结果
0x0D ,0x0A 应该是最后一个十六进制值,而 0x4A, 0x00 应该是前 2 个值。
谢谢!
解决方案
推荐阅读
- python - Python:用函数 SymPy 替换变量
- vue.js - VueJS:计算属性在组件中创建之前计算?
- python - 如何从已拆分的 .txt 文件中获取多行并将它们保存到不同的变量中
- javascript - 麻烦在 JS 中绘制圆圈并移动它们
- javascript - 如何安装 Lodash
- python - 如何为机器人应用程序/嵌入式系统进行 Python 转换
- reactjs - 从带有条件的 React 上的服务器数据库表中获取数据
- node.js - Nodejs:使用EPIPE写入bash进程的标准输入崩溃
- angular - Angular 路由和 Nginx 重写问题
- javascript - 创建动态表格组件Vue JS