我有一個由幾行組成的比特流文件。生成該文件的c程序可執行文件將該文件輸出爲一系列「short int」,它們實際上是16位整數。當我在記事本打開該文件,我得到以下的前幾行:由c程序打開的16位整數的二進制文件打開爲1s和0在python中
7E1755EB7909DAC8FF4117BDAA0E86EBD1A8
1C3D47DD6606D812E8862D347288C3A251EB
16D7D02AD908E0083C142C107AB916C55BE0
我需要能夠在Python打開這個文件,並將其轉換爲1秒,並表示原來的「短整型」 0或換句話說就是一個1和0的數組。我想我在閱讀文件時也可能遇到與「\ n」有關的新問題。
我嘗試下面的代碼,看看哪些方法最有效:
時,我只在第8個字節讀取的結果是:
0b1111110000101110101010111101011
(17719, 14129, 13621, 16965)
與問題第一個結果是我應該得到64 1和0,第二個問題是它是「元組」而不是1和0的數組,我不相信整數是基於16位的。他們看起來更像15位,但我不確定。
在此先感謝您的幫助。
這是** **不是二進制文件。這是一個十六進制文件。 –
你怎麼看?不能記事只是將它解釋爲HEX? – sciguy
如果這是一個隨機的二進制文件,記事本會顯示垃圾。這個二進制看起來像一個ASCII十六進制編碼的機會很小,但這不太可能。你的評論提到線也是一個暗示。二進制數據中沒有行,因爲與文本文件不同,新行字節(或窗口上的字節)只是更隨機的二進制數據。 – tdelaney