C++读取INI配置文件为什么有缺省值

在配置文件中passwd=123456在用一下函数获取GetPrivateProfileString("UserData","passwd","",data4,20,"E... 在配置文件中passwd=123456 在用一下函数获取GetPrivateProfileString("UserData","passwd","",data4,20,"E:\\test\\数据库\\Debug\\IniFileName.ini");,得到的结果怎么成了“12?”,3456哪去了,如何修改,谢谢 展开
 我来答
68317309
2013-06-03 · TA获得超过299个赞
知道小有建树答主
回答量:134
采纳率:0%
帮助的人:122万
展开全部
检查一下配置文件的编码,最好用ue看一下16进制编码,在12处是否有不可见字符引起读写异常。
个人建议重新写文件,要用手打,不要复制原来的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
糖二灰
2013-06-03 · TA获得超过3940个赞
知道小有建树答主
回答量:1052
采纳率:75%
帮助的人:1066万
展开全部
结果是 “12” 还是“12?“
不清楚你的获取函数GetPrivateProfileString内部是怎么写的,中间的data4 ,20各代表什么意思?
最好把GetPrivateProfileString的声明,以及每个参数是什么作用告诉我们。才好给你分析
更多追问追答
追问
CHAR *data4= new char[20]; 
WritePrivateProfileString("UserData","passwd","123456", ".\\IniFileName.ini");
GetPrivateProfileString("UserData","passwd","",data4,20, ".\\IniFileName.ini");
值变成"12?"了
追答
你是不是按2进制位读取的?如果是这样的话8位是一个字节,20个位正好2个半字节,所以来个12?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式