我正面临着正确读取二进制文件内容的问题,可能是因为数据结构的解包不正确(这就是为什么我在这里 - 因为我不知道如何解包数据结构,给出不同的数据类型)。
文档对我没什么帮助,只是引导我进入数据类型及其缩写的标准列表,以及一个不那么有用的插图。
我想了解以下代码:
data = struct.unpack('<hlhcl6s10s11s10s2s10schc', b[i:i+66])
&#34;应该&#34;对应于最后交易价格&#39;在这个数据结构中(附图): Data Structure of the binary file
我可以理解6s,10s等意味着字符长度。但是&#39; hlhcl&#39;是什么意思呢?在开始和&#39; chc&#39;到底。数据结构包含一个“长”的数据。 (这应该只是一个&#39; h&#39;,根据文档)后面跟着很多字符(应该写成&#39; c6s10s11s10s2s1s10s12s10s12s&#39;。
如果你能帮助我写出正确的字符序列来获得最后的交易价格,那么它会非常有帮助。提前致谢。
答案 0 :(得分:0)
如果您手头有二进制数据(b
,对吧?)并且您只对一个字段感兴趣,为什么不能直接访问该字段?
last_traded_price_bytes = b[88:98]
可能想要仔细检查这些数字,非常确定它是从第88个字节开始的。