给定数据结构读取二进制文件

时间:2018-05-29 08:48:19

标签: python binaryfiles algorithmic-trading

我正面临着正确读取二进制文件内容的问题,可能是因为数据结构的解包不正确(这就是为什么我在这里 - 因为我不知道如何解包数据结构,给出不同的数据类型)。

文档对我没什么帮助,只是引导我进入数据类型及其缩写的标准列表,以及一个不那么有用的插图。

我想了解以下代码:

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;。

如果你能帮助我写出正确的字符序列来获得最后的交易价格,那么它会非常有帮助。提前致谢。

1 个答案:

答案 0 :(得分:0)

如果您手头有二进制数据(b,对吧?)并且您只对一个字段感兴趣,为什么不能直接访问该字段?

last_traded_price_bytes = b[88:98]

可能想要仔细检查这些数字,非常确定它是从第88个字节开始的。