NVDS config文件在配置文件中的存放格式:根据csvOffset和hex1Size判断是否存在相关代码
时间: 2024-03-16 13:45:48 浏览: 136
config配置文件
以下为一个示例代码,用于判断NVDS配置文件中是否存在CSV文件内容:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct {
unsigned int size;
unsigned char type;
unsigned char data[0];
} nvds_block_t;
int main(int argc, char *argv[])
{
FILE *fp = fopen("nvds.bin", "rb");
if (!fp) {
printf("Failed to open file!\n");
return -1;
}
// 读取NVDS配置文件中的数据块头
nvds_block_t block_header;
fread(&block_header, sizeof(nvds_block_t), 1, fp);
// 判断是否存在CSV文件内容
int has_csv = 0;
unsigned int csv_offset = 0;
unsigned int csv_size = 0;
while (!feof(fp)) {
// 读取数据块头
nvds_block_t block_header;
fread(&block_header, sizeof(nvds_block_t), 1, fp);
// 判断数据块类型
if (block_header.type == 0x20) {
// 找到CSV文件内容所在的数据块
csv_offset = ftell(fp);
csv_size = block_header.size;
has_csv = 1;
break;
}
// 跳过当前数据块
fseek(fp, block_header.size, SEEK_CUR);
}
// 输出结果
if (has_csv) {
printf(" file found! Offset: 0x%08x, Size: %u bytes\n", csv_offset, csv_size);
} else {
printf("CSV file not found!\n");
}
fclose(fp);
return 0;
阅读全文