C++读取INI文件内容存放Map中

        一看到标题估计会有人会说,为什么还要讲INI文件内容读出来存放到map中呢?这不是浪费空间,时间么。。。

        因为:C++在读取INI文件时,一般都是在需要时,再根据GetPrivateProfileString函数,读取需要的key对应的值,但是,往往在项目中,读取文件花费的时间比较多,且读取文件也是会存在读取错误的情况。综上考虑,将在开始的时候,从INI文件中读取所有信息,保存到对应的数据结构中,一下,我是保存在map中,方便后面使用。毕竟内存访问比文件操作要快的多。

        整个思路如下:

1. 利用GetPrivateProfileSection函数,将指定Section下的所有key和keyvalue都存放在szBuffer参数中,下面,我们只需将该参数进行分解出来就好了。

                       int nSizeCount = GetPrivateProfileSection(strSectionName,szBuffer,4096,strFileName);

         2.下面将是如何分解这些key=keyvalue的内容了,然后将分割后的内容存放到map中,供后面的程序使用。其中包括了CString类型转化为string类型的问题,这里我是将CString先转化为wstring,然后将wstring转化为string类型的思路。

        string U2A(const wstring& str)//Unicode字符转Ascii字符</span>  
{  
    s

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值