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

施用ACE遍历读取ini文件

2012-10-24 
使用ACE遍历读取ini文件int ReadFromIni(const char* szIni){ACE_Configuration_Heap configACE_Ini_ImpE

使用ACE遍历读取ini文件

int ReadFromIni(const char* szIni)  {      ACE_Configuration_Heap config;    ACE_Ini_ImpExp ini(config);    config.open();    if(-1 == ini.import_config(szIni))    {          //ACE_ERROR_RETURN( (LM_ERROR,"error open config file\n"),-1 );          cout << "error open config file" << endl;        return -1;    }    ACE_Configuration_Section_Key key_network;    int retCode = config.open_section(config.root_section(), "mc_app", 0, key_network);      cout << "retCod = " << retCode << endl;    ACE_TString value;    config.get_string_value(key_network,"mc_ip", value);    cout << "ip = " << value.c_str() << endl;    config.get_string_value(key_network,"mc_port",value);      int port=atoi(value.c_str());      cout << "port = " << port << endl;      int iIndex = 0;    while (true)    {        retCode = config.enumerate_sections(config.root_section(), iIndex, value);        if (1 == retCode)        {            break;        }        if (retCode < 0)        {            cout << "lasterror = " << ACE_OS::last_error() << endl;            break;        }        cout << "[" << value.c_str() << "]" << endl;        retCode = config.open_section(config.root_section(), value.c_str(), 0, key_network);        if (retCode < 0)        {            cout << "lasterror = " << ACE_OS::last_error() << endl;            //iIndex ++;            //continue;            break;        }        int valueIndex = 0;        ACE_TString valueName;        ACE_Configuration::VALUETYPE  valueType;        while (true)        {            retCode = config.enumerate_values(key_network, valueIndex, valueName, valueType);            if (1 == retCode)            {                break;            }            if (retCode < 0)            {                cout << "lasterror = " << ACE_OS::last_error() << endl;                break;            }            cout << "valueName=" << valueName << ", valueType=" << valueType << endl;            valueIndex ++;        }        //         iIndex ++;    }    //ACE_DEBUG((LM_NOTICE,"will listen on port %d\n",port));      return 0;  }

热点排行