有关读INI文件的问题
INI文件内容如下:
[商品全称]
Name256=内存(256M)
Name512=内存(512M)
用GetPrivateProfileString读完存到一个用Space(255)初始化的变量中
ReturnString = Space(255)
ReturnStringLong = GetPrivateProfileString(Section, Key, vbNullString, ReturnString, 255, IniFileName)
再截取,结果=Left(ReturnString, ReturnStringLong)
此时问题就出来了,为什么"内存(256M)"的长度按8个来计算?也就是中文字按一个字符来处理,怎么样才能使Left在截取汉字时一个汉字按两个字符来处理?
问题点数:0、回复次数:6Top
1 楼wumylove1234(毁于随)回复于 2005-06-03 13:19:52 得分 0
直接用Trim去掉Returnstring的空格就行了.
Top
2 楼Snnywf888(AAA)回复于 2005-06-03 13:21:25 得分 0
去不掉的,不知道为什么!Top
3 楼csdnzm(明飞)回复于 2005-06-03 13:22:09 得分 0
lenBTop
4 楼Snnywf888(AAA)回复于 2005-06-03 13:38:46 得分 0
字符长度是函数反回的,怎么用LenB呀?Top
5 楼Snnywf888(AAA)回复于 2005-06-03 14:58:11 得分 0
没人遇见过这个问题?Top
6 楼Snnywf888(AAA)回复于 2005-06-03 16:34:26 得分 0
GetPrivateProfileString在获得字符串'内存(256M)'长度时将中文字符按2个字符来计算,而Left在截取字符时将中文字符按1个字符来计算,计算方式的不同导致结果就大大不同了,谁有好的计算方法呀?Top




