天天看点

有限状态机解析配置文件

只需要对有限状态机的模型有所了解,搞清楚状态转移关系即可快速的写出程序。

如对网络配置文件进行解析(与/etc/sysconfig/network-scripts/ifcfg-eth0文件类似的格式)

格式如下:(其中以#开头的行为注释行,有效的配置字符为数字,字母和点号)

#this is a net work config file

IPADDR = 192.168.1.71

NETMASK = 255.255.255.0

GATEWAY = 192.168.1.1

我们可以定义四种状态:

1.  初始状态

2.  KEY状态,读到配置键的时候进入该状态

3.  VALUE状态,读到配置值的时候进入该状态

4.  DELIM状态,即key与value之间的分隔符

状态转移关系图如下:(对于xml,ini等配置文件的解析,状态转移图复杂得多)

具体实现如下:(C语言)

继续阅读