使用python数组从文件读取数据时出错

使用python数组从文件读取数据时出错,python,binaryfiles,pcap,Python,Binaryfiles,Pcap,我正在尝试读取Python 2.7中的二进制pcap文件 import array f = open('unit_46_Monterey_subset.pcap') bin = array.array('B') bin.fromfile(f, 1206) 文件大小为12.640.024字节 当我运行它时,我会收到错误消息:EOFError:“文件中没有足够的项” 我做错了什么?您正在以错误的模式打开文件:您需要使用用于读取二进制文件的'r'(默认设置)而不是'rb'。这应该起作用: impor

我正在尝试读取Python 2.7中的二进制pcap文件

import array
f = open('unit_46_Monterey_subset.pcap')
bin = array.array('B')
bin.fromfile(f, 1206)
文件大小为12.640.024字节

当我运行它时,我会收到错误消息:EOFError:“文件中没有足够的项”


我做错了什么?

您正在以错误的模式打开文件:您需要使用用于读取二进制文件的
'r'
(默认设置)而不是
'rb'
。这应该起作用:

import array
f = open('unit_46_Monterey_subset.pcap', 'rb')  # notice the 2nd argument
bin = array.array('B')
bin.fromfile(f, 1206)
当然,完成后不要忘记关闭文件:

f.close()

您正在以错误的模式打开文件:您需要使用用于读取二进制文件的
'rb'
来打开文件,而不是
'r'
(默认设置)。这应该起作用:

import array
f = open('unit_46_Monterey_subset.pcap', 'rb')  # notice the 2nd argument
bin = array.array('B')
bin.fromfile(f, 1206)
当然,完成后不要忘记关闭文件:

f.close()