Tôi đang cố gắng đọc tệp BMP bằng Python. Tôi biết hai byte đầu tiên cho biết công ty BMP. 4 byte tiếp theo là kích thước tệp. Khi tôi excecute:Đọc các số nguyên từ tệp nhị phân trong Python
fin = open("hi.bmp", "rb")
firm = fin.read(2)
file_size = int(fin.read(4))
tôi nhận được
ValueError: invalid literal for int() with base 10: 'F#\x13'
Những gì tôi muốn làm là đọc bốn byte là một số nguyên ... Có vẻ như Python được đọc chúng như nhân vật và trả về một chuỗi, mà không thể chuyển đổi thành số nguyên. Làm thế nào tôi có thể làm điều này một cách chính xác?
Nếu mục tiêu của bạn là * sử dụng * bitmap thay vì dành thời gian viết thư viện BMP của riêng bạn (không phải là điều đó không có vẻ thú vị ...), bạn có thể sử dụng PIL http://www.pythonware.com/ sản phẩm/pil/mà bạn có thể đã cài đặt. Thử: nhập hình ảnh –
Cảm ơn Jared, nhưng tôi muốn đọc bmp bằng tay chỉ để vui chơi! :) –