struct.error: unpack requires a buffer of 136 bytes

在将32位系统树莓派上的照片传输到64位Linux服务器时遇到了struct.error:unpackrequiresabufferof136bytes错误。问题根源在于打包时的结构体格式不匹配。解决方案是,在打包时使用128sq而非128sl,并在64位服务器端保持128sl进行解包,从而解决了不同位系统间的兼容性问题。

struct.error: unpack requires a buffer of 136 bytes@TOC

使用树莓派向linux服务器传输照片时,struct.error: unpack requires a buffer of 136 bytes

原因是树莓派系统为32位,而服务器系统为64位。

因此需要在打包时
fhead = struct.pack(‘128sq’, bytes(os.path.basename(filepath),encoding=‘utf-8’),os.stat(filepath).st_size)
使用128sq而不是128sl。在64位服务器中解包时仍使用128sl即可解决

链接: https://blog.youkuaiyun.com/zsy162534/article/details/83991785.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值