汽车VBF格式文件详解---使用python解析VBF文件

https://pypi.org/project/vbf-parser/

pypi中有解析vbf的库,可以直接安装

pip install vbf-parser

按照example的方法读取vbf后,可以得到vbf中的header信息,并得到一个字典类型的变量。

from vbf_parser import extract_header_body, lex_vbf_header, parse_vbf_tokens

with open("file.vbf", "rb") as file:

header_body = extract_header_body(file)

vbf = parse_vbf_tokens(lex_vbf_header(header_body))

当前这个库只能提取header,data部分需要自己实现。

因为vbf文件格式是二进制文件,所以在open的时候,需要使用rb参数,extract_header_body在处理完file后,就把header截取掉了,所以我们接着使用file,file的起始就是data段。

将file.read()后,调用熟悉的库函数(例如binascii等)转换成bytes或者str类型,那么数据从起始就是data block的start address(4bytes),length(4bytes),data,crc16(2bytes),按照顺序遍历提取即可。提取完data后,我们可以自己再计算一次data的crc,与提取到的crc比较,以保证自己提取数据是完整的。

提取信息之后,可以再加到vbf字典中,以供后续使用。

相关推荐
xyq202412 小时前
jEasyUI 添加工具栏
开发语言
XMYX-012 小时前
10 - Go 指针:从入门到避坑
开发语言·golang
张二娃同学12 小时前
深度学习入门:YOLOv5 与 Fast R-CNN的认识
人工智能·python·深度学习·神经网络·yolo
jjjava2.012 小时前
数据库事务:ACID特性与实战应用
java·开发语言·数据库
海天一色y12 小时前
深度学习时序预测进阶:CNN-LSTM-MHA混合模型+灰狼优化算法(GWO)实战
python
Yu_Lijing12 小时前
Python数据分析和数据处理库Pandas(Series篇)
人工智能·python·数据分析·pandas
zzginfo12 小时前
JavaScript 中 Array 、 Set 、 WeakSet 区别
开发语言·javascript·ecmascript
盟接之桥12 小时前
盟接之桥®制造业EDI软件:连接全球供应链的“数字桥梁”,赋能中国制造走向世界
大数据·网络·人工智能·汽车·制造
发发就是发12 小时前
顺序锁(Seqlock)与RCU机制:当读写锁遇上性能瓶颈
java·linux·服务器·开发语言·jvm·驱动开发
农村小镇哥12 小时前
PHP递归遍历+MYSQL介绍+MYSQL基本操作
开发语言·mysql·php