[Tutor] reading binary files
eShopping
etrade.griffiths at dsl.pipex.com
Wed Feb 4 21:04:09 CET 2009
Bob
sorry, I misread your email and thought it said "read on" if the
file was FORMATTED. It wasn't so I didn't (but should have). I read
the complete thread and it is getting a little messy so I have
extracted your questions and added some answers.
>I'd like to examine the file myself. We might save a lot of time and
>energy that way. If it is not very large would you attach it to your
>reply. If it is very large you could either copy just the first 1000
>or so bytes, or send the whole thing thru www.yousendit.com.
The file is around 800 Mb but I can't get hold of it until next week
so suggest starting a new topic once I have a cut-down copy.
>Well, did you read on? What reactions do you have?
I did (finally) read on and I am still a little confused, though less
than before. I guess the word UNFORMATTED means that the file has no
format .... though it presumably has some structure? One
major hurdle is that I am not really sure about the difference
between a Python binary file and a FORTRAN UNFORMATTED file so any
pointers would be gratefully received
>The file looks like (where b = blank) (how it would look in notepad):
>bbDISTANCEbbbbbb10bFbbb0.00bbb1.00bbb2.00 If you analyze this with 2s8s2si2s1s
>you will see 2s matches bb, 8s matches DISTANCE, 2s matches bb, i
>matches bbbb. (\x40\x40\x40\x40). The i tells unpack to shove those
>4 bytes unaltered into a Python integer, resulting in 538976288. You
>can verify that:
>
> >>> struct.unpack('i', ' ')
>(538976288,)
>
>Please either assure me you understand or are prepared for a more in
>depth tutorial.
I now understand why Python gave me the results it did ... it looks
like reading the FORTRAN file will be a non-trivial task so probably
best to wait until I can post a copy of it.
Thanks for your help
Alun Griffiths
More information about the Tutor
mailing list