在python中读取二进制文件时的偏移量

2024-04-19 05:47:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个正在解析的OSM PBF file。格式标准规定,并在崇高文本中阅读,确认前4个字节为:

0000 000d

那么,如果我运行一个非常简单的Python程序:

PBFfile = open(r'MyFilePath.osm.pbf')
PBFfile.read(4)[3].encode('hex')

它是否返回0a(序列中的下一个字节)而不是预期的0d?有明显的解释吗?在

我在Windows7上,Python 2.7.5 32位。在


Tags: 文本程序read字节osm格式openencode
1条回答
网友
1楼 · 发布于 2024-04-19 05:47:05

您以“文本模式”打开文件,这会导致一些不必要的换行处理(docs)。在

要解决您的问题,请以二进制模式打开它,例如:

PBFfile = open(r'MyFilePath.osm.pbf', 'rb')

相关问题 更多 >