好吧。我想我已经把它解码了,虽然我不确定中间的16位值。在
这段python2.7代码。。。在from cStringIO import StringIO
import struct
import time
def decode(f):
def read_le16(f):
return struct.unpack('
def read_timestamp(f):
ts = struct.unpack('
return time.ctime(ts)
def read_byte(f):
return ord(f.read(1))
def read_pascal(f):
l = ord(f.read(1))
return f.read(l)
result = []
# Read total length
result.append('Total message length is %d bytes' % read_le16(f))
# Read timestamp
result.append(read_timestamp(f))
# Read 3 x byte
result.append(read_byte(f))
result.append(read_byte(f))
result.append(read_byte(f))
# Read 1 x LE16
result.append(read_le16(f))
# Read 3 x pascal string
result.append(read_pascal(f))
result.append(read_pascal(f))
result.append(read_pascal(f))
return result
s = 'L\x00k\x07vQ\n\x01\xffh\x00\x04NGIN\x04MAIN6Product XX finished reprocessing cdc XXXXX at jesadr 0c\x00k\x07vQ\n\x01\xffF\x00\x06CSSPRD\x0cliab_checkerCCheckpointed to XXXXXXXXXXXXXXXX:XXXXXXX.XXX at jesadr 0 (serial 0)[\x00l\x07vQ\n\x00\xff\x01\x00\x05MLIFE\x06dayendBdayend 1 Copyright XXXX XXXXXXX XXXXXXX XXXXX XXX XXXXXX XXXXXXXX.'
f = StringIO(s)
print decode(f)
print decode(f)
print decode(f)
…产量。。。在
^{pr2}$
时间戳是5个小时,所以我假设是时区的问题。在