ACE操作配置文件

来源:互联网 发布:242家网络小额贷款牌照 编辑:程序博客网 时间:2024/05/17 23:47

配置文件操作相关类:

1、ACE_Configuration_Heap:它可以用在几乎所有的平台上,在内存中保存所有配置信息.可以对内存的分配进行定制,使用持久的后备存储,但是最常用的是动态分配的堆内存,所以这个类的名字里面含有一个Heap;

2、ACE_Configuration_Win32Registry:它只能用在Windows平台上,它实现了ACE_Configuration类的接口,可以访问合操纵注册表中的数据;

3、ACE_Registry_ImpExp:这个类使用了一种文本格式,其中的每个值都有类型信息.

4、ACE_Ini_ImpExp:这个类使用的是较老的Windows"INI"文件的格式,其中的值没有相关联的类型信息,因此,不管原来的类型是什么,使用ACE_Ini_ImpExp导出的配置数据总是作为字符串数据导入;

5.ACE_Configuration_Section_Key 指定到某个Section的类

下面的例子是ACE_Configuration_Heap类的使用样例,用于从配置文件中读取配置信息;配置文件的格式如下:

[SECTION]

count=5

例子代码:
ACE_Configuration_Heap config;
config.open();
ACE_Ini_ImpExp imp(config);

if (imp.import_config(ACE_TEXT("configIniFilePath")))
{
ACE_ERROR_RETURN((LM_ERROR, ACE_TEXT("%C not found!\n"), "configIniFilePath"), 0);
}


ACE_Configuration_Section_Key section;
if (config.open_section(config.root_section(), ACE_TEXT("SECTION"), 0, section))
{
ACE_ERROR_RETURN((LM_ERROR, ACE_TEXT("%C Format Error when getSECTIONsection!\n")), 0);
}


ACE_INT32 nCount = 0;
ACE_TString value;
if (config.get_string_value(section, ACE_TEXT("count"), value))
{
ACE_ERROR_RETURN((LM_ERROR, ACE_TEXT("%C Format Error when get decoder count!")), 0);
}


nCount = ACE_OS::atoi(value.c_str());

原创粉丝点击