添加了一个模块,定义了一个全局的字符型(String)数组(A)并写了一个打开文件的过程。在打开文件的过程里,我将文件中的十个字符读入字符数组的一个元素A(1)中。我使用了VB里的Get函数:
Dim temp As String
Open filename For Birnary As #1
temp=Space$(10)
'从当前位置读取
Get #1,,temp
A(1)=temp
.....
(假设A(1)现在为"123 ")可当小生要将A(1)中字符串的空格去除时,却发现
Rtrim$()函数都不再管用了,即经过函数Rtrim$(A(1))之后其结果仍为"123 "。
而且还有另外一个现象,就是我用Right$()函数去取A(1)的最右边的一个字符,
将其赋给一个变量str,在调试时可以看到str是一个空格,但如果用Asc()函数
去计算str的值,结果却是0(即Asc(str)=0)。
小生百思不得其解,只记得在出现这种奇怪的现象之前,我使用过一次StrConv
函数(StrConv(A(1),VbFromUnicode)),但后来便去除掉了。还装过一次MDAC2.0,
我怀疑是不是程序使用的内码有问题?我将程序拿到别人的电脑上去试,结果也
是一样的,Rtrim$()函数还是失效我已经没有办法再想了,希望大家帮忙!
多谢了!
6 个解决方案
#1
那是因为你所取到的字符串是Windows里的以ACII值0(\0), C语言里边就是这样;但VB里边的字符串是不同的,结尾并没有\0,因此必须使用StrConv来进行转换。
#2
用trim()
#3
或有chr(10) or chr(13)!!!!!!!
就是回车或换行符
就是回车或换行符
#4
他们都说了。我说啥?也不留一点给我!
#5
楼上的你乱嚷什么,我那次不都在你后面,我还没有叫呢,咩咩
#6
脚下的哥们:
这个问题给你们:
http://www.csdn.net/expert/TopicView.asp?id=49611
这个问题给你们:
http://www.csdn.net/expert/TopicView.asp?id=49611
#1
那是因为你所取到的字符串是Windows里的以ACII值0(\0), C语言里边就是这样;但VB里边的字符串是不同的,结尾并没有\0,因此必须使用StrConv来进行转换。
#2
用trim()
#3
或有chr(10) or chr(13)!!!!!!!
就是回车或换行符
就是回车或换行符
#4
他们都说了。我说啥?也不留一点给我!
#5
楼上的你乱嚷什么,我那次不都在你后面,我还没有叫呢,咩咩
#6
脚下的哥们:
这个问题给你们:
http://www.csdn.net/expert/TopicView.asp?id=49611
这个问题给你们:
http://www.csdn.net/expert/TopicView.asp?id=49611