POCO库的使用

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

wstring s2w(const string& str)
{
size_t num = 0;
vector<wchar_t>buf( 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<Poco::Util::XMLConfiguration> 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");


配置文件格式如下;

<config>
    <ftp>
    <ip>192.168.18.131</ip>
    <port>21</port>
    <userName>ANONYMOUS</userName>
    <password></password>
    </ftp>
    <database>
       <ip>192.168.18.246</ip>
       <port>1433</port>
       <userName>sa</userName>
       <password>`123qwer</password>
    </database>
</config>


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值