lkcool7 2016-10-17 11:03 采纳率: 0%
浏览 2386
已结题

lua脚本中关于 bitstring.pack()和bitstring.unpack()的问题

遇到问题的代码如下:

#!/bin/lua
local bitstring = require("bitstring")
local header_fmt = "8:bin, 8:bin, 32:int"
local set_id0 = "00000000"
local pk_id  = "70403165"
local org_time = 132
local ack_pk = bitstring.pack(header_fmt, set_id0, pk_id, org_time)
print("+++++++++++++",pk_id, "time:", org_time)
local _id0, _id, _time = bitstring.unpack(header_fmt, ack_pk)
print("-------------", _id, "time:", _time)

上面这小段代码,用到了lua的拓展库bitstring, bitstring.pack用来把一些数据打包成字符串的形式,以便发送。 bitstring.unpack用于拆包,现在问题是第三项数值数据org_time (值为132)在调用bitstring.pack()打包,再调用bitstring.unpack()解包,得到的第三项数据 _time始终为0,也就是说数据在打包拆包过程中丢失了,这是怎么回事呢?而且我在别人的机子上运行就不会出现这种问题?我把head_fmt中 32:int 改为 16:int,也能拆包得到正确的数值,但一旦是32:int,不管我 org_time值为多少, 就只能得到0。 希望有朋友能够指点我一下,在这里提前说声谢谢!

  • 写回答

1条回答 默认 最新

  • 星空下的嗳 2016-10-18 00:38
    关注

    楼主,你是再弄luci中的lua吗

    评论

报告相同问题?

悬赏问题

  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图