首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

libconfig格式的配置文件如何读取

2012-09-08 
libconfig格式的配置文件怎么读取?在做一个示波器的简单例子,在qemu for mini2440上运行。要用到配置文件,

libconfig格式的配置文件怎么读取?
在做一个示波器的简单例子,在qemu for mini2440上运行。
要用到配置文件,格式是libconfig的,类似如下:
sample {
  # 抽样数目
  count=240
  # 抽样总时间. 这里是 10毫秒进行240次抽样
  # 根据这个时间和抽样数,可以算出采样频率
  duration=0.01
}

# 各个信道是按顺序排放,这里只列出第一和第二信道的信息
# 信道1
channel {
  name="Signal truc"
  # 耦合方式 : AC 或 DC
  coupling=DC
  file {
  # 与此信道相关连的二进制pcm文件
  filename="chan1.pcm"

  # pcm文件中数据格式 :
  # 16_LE : 16 bits little endian
  # 16_BE : 16 bits big endian
  # 32_LE : 32 bits little endian
  # 32_BE : 32 bits big endian
  format=16_LE

  # 抽样的电压的最大与最小值
  min_voltage=0.0
  max_voltage=3.3
  }
}

# 信道2
channel {
  name="Horloge"
  coupling=DC
  file {
  filename="chan2.pcm"
  format_bit=16_LE
  min_voltage=0.0
  max_voltage=3.3
  }
}

不安装libconfig,怎么用C语言读取这样格式的配置文件呢?
谢谢,急!

[解决办法]
1、首先你得建立一个树型的数据结构,类似于这样的结构:
root -- sample -- count(240)
-- duration(0.01)
-- channel -- name("Horloge")
-- file -- filename("chan2.pcm")
-- format_bit(16_LE)
2、然后逐个字符的读取配置文件,遇到'#'字符直到换行符时把它当作注释忽略掉;
3、忽略空白符号,遇到'{'时深入一层,遇到'}'时退出一层;
4、其它的就按照各自的层次,解析出它们的名称和属性值,属性值可以先全部用字符串表达。
[解决办法]
还是.ini 或者.xml的方便。

热点排行