POCO库的使用

最近在找网络库的时候发现了POCO这个库,里面的配置文件接口用着挺舒服的。TCP没有使用因为windows下面是select模式,效率不够。数据库用的是ODBC效率也不够,日志系统没有glog好,所以日志用的glog,别的还没有研究,有空的时候再补上。

wstring s2w(const string& str)
{
size_t num = 0;
vectorbuf( str.size()*2 + 2 );
_locale_t local = _create_locale(LC_ALL,"chs");
//if failed set buf empty string and num = 0
_mbstowcs_s_l(&num, &buf[0], buf.size(),str.c_str(),_TRUNCATE,local);
_free_locale(local);
return &buf[0];
}


中文路径的支持

str =   "D:\\我的文档\\config.xml";

wstring wstr = s2w(str);

Poco::UnicodeConverter::toUTF8(wstr, str);

AutoPtr cfg(new Poco::Util::XMLConfiguration(str.c_str()));

m_dbIp = cfg->getString("database.ip");
m_dbPort = cfg->getString("database.port");
m_dbUser = cfg->getString("database.userName");
m_dbPwd = cfg->getString("database.password");


配置文件格式如下;


   
    192.168.18.131
    21
    ANONYMOUS
   
   

   
       192.168.18.246
       1433
       sa
       `123qwer
   



你可能感兴趣的:(POCO)