This does look like an encoding issue.
That file seems to contain plain ASCII values of the numbers - at least judging from the sample you gave us.
The ASCII-Hex-Code 30
is the character 0
, 31
=1
,..., 39
=9
.
That ASCII-Hex-Code 0A
is a linefeed.
I would not be too surprised if you also found the values
41
until 46
which would resolve to A
- F
, or maybe 61
until 66
which would be the lowercase variants a
- f
.
As that description claims those number to be 32bit wide, I would suggest you try to read up to 8 characters (bytes) per number and convert those ASCII values into numeric values by e.g. using sscanf
- as said, numbers most likely are delimited by that linefeed.
However, the confusing part is that your given sample contains numbers that are obviously made from more than 8 characters;
35 3330 3030 3030 3030 30
That would resolve to
5300 0000 00
which is more than 32bit wide and hence not fitting the description.
So something is wrong, either the description (which should say e.g. 64bit), or your quote (you somehow mixed things up while copying) or the entire file format is broken (less likely).
Well, I would start by parsing them line by line and trying to convert them to binary values by using sscanf
monster.