VB 从一个文件中读取了一个定长字符串,如何去掉后面的空格?

来源:百度知道 编辑:UC知道 时间:2024/05/17 22:22:50
在程序中从一个文件中读取了一个定长字符串,想去掉它后面的空格,可是用了RTrim,LTrim,Trim三个函数 都去不掉后面的空格。请问谁有办法掉它后面的空格,还有别的方法吗?我是无能为力了,请大侠帮忙解决下!我的邮箱里有源码 账号: ttihaha@163.com 密码:hahagogo 我QQ271072330先谢了~
ljl88900 - 探花 十级 你的答案 还有一个空格没去掉,不知为什么?请大家帮帮忙哦!

这样改:
'自定义结构类型
Private Type FILEITEM
PN As String * 20 '图片的名字
End Type
Dim s As FILEITEM '定义一个结构变量
Dim f As String

'获取字符串
Private Sub Command1_Click()

'打开文件
Open App.Path & "\1.MP3" For Binary As #1

Get #1, , s.PN '获取名字

Close #1

'显示
f = "你好" & Replace(s.PN, Chr(32), "") & ".bmp" '如何去掉中间的空格?

Cls
Print f

End Sub

比如说
dim a as string*20
读取前先用空格填满
a=space(20)
'读取
b=trim(a)

定长字符串你没有理解。一个定长字符串,比如dim str as string * 256,这个str变量里面就包含了256个空字符,而不是空格。
首先你要理解字符和字符串的区别,字符是一个一个的,字符串是一组字符组成的。
其次,空字符的Ascii码是0,而空格是32,在VB里表示为 Chr(0) 和 Chr(32)
在VB里,空字符也可以用常量 vbNullChar 来表示。而你提到的几个Trim的函数,去除的只是 Chr(32) 这样的空格符,而不是空字符,所以你不成功。
下面我给你写个函数示例:
Function CutNullChar(Optional ByVal SourceStri