windows中读取*.ini文件的问题

此去依然 2013-12-20 11:54:11
RT

[Mapping]
key_00=00:multicastIP_0
key_01=01:multicastIP_1
key_02=02:multicastIP_2
key_03=03:multicastIP_3
key_04=04:multicastIP_4
key_05=05:multicastIP_5
......

[General]
!GMT
RefreshTime=00:00:00

DataPath=c:\Tool\Data


刚接触windows C++开发,请教一下这种需求怎么设计*.ini和存的问题

因为[Mapping]中的ID和multicastIP是可以配置的,所以左边的键值就不能固定了,这种情况如何处理比较好,我是想把每一条读出来,把ID和multicast存到map<int,string>中,但是如果用户的key值配置了几千条,我代码里总不能写几千条吧。。。

...全文
217 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
davidyu720 2013-12-20
  • 打赏
  • 举报
回复
解决方案: 定义一个参数,设置有多少个key值; 用for循环,动态生成key_xx,读取value,然后保存到map中
Meteor_Code 2013-12-20
  • 打赏
  • 举报
回复
1, [Mapping] count=6 key_00=00:multicastIP_0 key_01=01:multicastIP_1 key_02=02:multicastIP_2 key_03=03:multicastIP_3 key_04=04:multicastIP_4 key_05=05:multicastIP_5 int i, iCount = GetProfileInt("Mapping", "count", xxx); for(i = 0; i < iCount; ++i) { CString str; str.Format("key_%02d", i); GetProfileString("Mapping", str, xxx); } 2 GetPrivateProfileSection
  • 打赏
  • 举报
回复
GetPrivateProfileSection 会将map下的所有key= value取出来 ,存到一个字符串里面 ,你自己拆吧,要不就是配置个,count,按照 key_xx,去读 但是对配置要严格要求。

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧