从文件中使用python数组读取数据时出错
问题描述:
我试图在Python 2.7中读取二进制pcap文件。从文件中使用python数组读取数据时出错
import array
f = open('unit_46_Monterey_subset.pcap')
bin = array.array('B')
bin.fromfile(f, 1206)
该文件大小为12.640.024字节。
当我运行它,I'm收到错误消息:引发EOFError:“没有文件足够的项目”
我在做什么错?
答
你的opening
你的文件在错误的模式下:而不是'r'
(默认),你需要打开'rb'
,这是为了读取二进制文件。这应该工作:
import array
f = open('unit_46_Monterey_subset.pcap', 'rb') # notice the 2nd argument
bin = array.array('B')
bin.fromfile(f, 1206)
,当然还有,不要忘记close
文件时,即可大功告成:
f.close()