[发明专利]配置文件的解析方法、系统及电子设备在审
申请号: | 201911316226.1 | 申请日: | 2019-12-18 |
公开(公告)号: | CN111124479A | 公开(公告)日: | 2020-05-08 |
发明(设计)人: | 闫安 | 申请(专利权)人: | 北京像素软件科技股份有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 董艳芳 |
地址: | 102200 北京市昌平区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 配置文件 解析 方法 系统 电子设备 | ||
1.一种配置文件的解析方法,其特征在于,所述方法包括:
对需要解析的所述配置文件进行读取,获得所述配置文件的读取结果;
根据所述配置文件的读取结果,对所述配置文件中的对象进行映射,得到映射结果;
对所述配置文件的读取结果中的每一行数据进行解析得到解析结果;所述解析结果通过所对应的所述映射结果,用于所述配置文件的访问。
2.根据权利要求1所述的方法,其特征在于,对所述配置文件的读取结果中的每一行数据进行解析得到解析结果的步骤,包括:
遍历所述配置文件的读取结果,获得所述配置文件的读取结果中的所有换行符;
根据所述换行符,获得所述配置文件的读取结果中的每一行数据;
对所述配置文件的读取结果中的每一行数据进行初级解析;
根据所述初级解析的结果,对所述行数据进行高级解析。
3.根据权利要求2所述的方法,其特征在于,所述初级解析,包括:
判断所述行数据是否为空数据;
如果是,则返回空行类型;如果否,判断所述行数据是否为注释行;
如果是,则返回注释行类型;如果否,对所述行数据进行高级解析。
4.根据权利要求2所述的方法,其特征在于,所述高级解析,包括:
判断所述行数据是否为条件编译指令数据,如果是,返回条件编译指令类型;如果否,则对所述行数据执行宏替换判断步骤;
如果所述行数据能够进行宏替换,则执行宏替换操作;如果所述行数据不能进行宏替换,则对所述行数据执行子配置文件操作;
判断所述行数据是否包含#include字段,如果是,则对所述#include字段后包含的子配置文件进行读取;如果否,则对所述行数据执行宏定义判断步骤;
如果所述行数据中包含#define字段,则对所述#define字段后的数据存储为宏;如果所述行数据中不包含#define字段,则执行对象语句快的判断;
如果所述行数据中是对象语句块,则查找所述映射结果中的对象地址;如果所述行数据中不是对象语句块,则进行赋值语句判断步骤;
如果所述行数据是赋值语句,则根据对应的属性名查找属性地址并赋值;如果所述行数据不是赋值语句,则提示出错。
5.根据权利要求1所述的方法,其特征在于,所述配置文件采用C语言或C++语言中的任意一种。
6.根据权利要求4所述的方法,其特征在于,判断所述行数据是否为条件编译指令数据的步骤,包括:
判断行数据中是否包含#else、#endif、#ifdef和#ifndef中的任意一种。
7.根据权利要求4所述的方法,其特征在于,对所述#include字段后包含的子配置文件进行读取的步骤,包括:
获得所述子配置文件的每一行数据;
对所述子配置文件的每一行数据进行初级解析;
根据所述初级解析的结果,对所述子配置文件的每一行数据进行高级解析。
8.一种配置文件的解析系统,其特征在于,所述系统包括:
文件读取模块,用于对需要解析的所述配置文件进行读取,获得所述配置文件的读取结果;
文件映射模块,用于根据所述配置文件的读取结果,对所述配置文件中的对象进行映射,得到映射结果;
文件解析模块,用于对所述配置文件的读取结果中的每一行数据进行解析得到解析结果;所述解析结果通过所对应的所述映射结果,用于所述配置文件的访问。
9.一种电子设备,其特征在于,包括:处理器和存储装置;所述存储装置上存储有计算机程序,所述计算机程序在被所述处理器运行时执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述权利要求1至7任一项所述的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京像素软件科技股份有限公司,未经北京像素软件科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911316226.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种空调回风再利用装置
- 下一篇:一种综合能源分配规划用演示装置