Binary files: Difference between revisions
No edit summary |
(imported to nmm trac) |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
== Opening, Reading == | == Opening, Reading == | ||
'''IMPORTED''' | |||
Simple example of parsing a binary file (reads 1024 bytes, aka 1MB at a time). | Simple example of parsing a binary file (reads 1024 bytes, aka 1MB at a time). | ||
Line 28: | Line 30: | ||
== Parsing == | == Parsing == | ||
The Python [http://docs.python.org/library/struct.html struct] module is very useful for | The Python [http://docs.python.org/library/struct.html struct] module is very useful for turning the "raw data" returned from read into Python data types (strings, numbers). |
Latest revision as of 16:15, 22 September 2009
Opening, Reading
IMPORTED
Simple example of parsing a binary file (reads 1024 bytes, aka 1MB at a time).
#!/usr/bin/python
import os, sys
fpath = sys.argv[1]
size = os.stat(fpath)[6]
print size, (size / 1024.0)
file = open(fpath, "rb")
count = 0
while 1:
chunk = file.read(1024)
if not chunk:
break
count += 1
print ".",
print
file.close()
print count, "megabytes"
Parsing
The Python struct module is very useful for turning the "raw data" returned from read into Python data types (strings, numbers).