Taking everything into consideration, my code is now:

import struct
file = open("test.gde", "rb")
signature = file.read(3)
version, attr_count = struct.unpack('II', file.read(8))
print signature, version, attr_count
for idx in xrange(attr_count):
        attr_id, attr_val_len = struct.unpack('II', file.read(8))
        attr_val = file.read(attr_val_len)
        print attr_id, attr_val_len, attr_val
file.close()

which gives a result of:

GDE 2 2
1 4 é
2 4 ê Å

Essentially, the same results I was originally getting :(
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to