读书人

关于string类型的比较解决方案

发布时间: 2012-02-02 23:57:14 作者: rapoo

关于string类型的比较
我定义了两个string类型的变量,从数据库里提出数据到这两个变量,为什么我提的数据是一样的,但是是从不同的表里提的,比较之后发现返回不相等
Dim dan_1(10) As String
Dim dan_2(10) As String ’string类型的数组
。。。。。。
。。。。。。
。。。。。。
MsgBox(dan_1(0))
MsgBox(dan_2(0)) ‘显示两变量是都是“B”

If Equals(Trim(dan_1(0)), Trim(dan_2(0))) Then
fenshu = fenshu + 2
End If
MsgBox(fenshu)
得到的fenshu值为0

[解决办法]
你可以用msgbox( "_ " & strVal & "_ ")来看看,再用ASCII()查看asc码。
如果数据库里面字段用char类型,取出来要trim
[解决办法]
StripNulls我用了多年。绝对没问题。
Trim(dan_2(0).length返回值是3,里面可能有2个VBNullChar
再试试下面的:
Public Function StripSingleNull(ByVal StrIn As String) As String
Dim nul As Long
nul = InStr(StrIn, vbNullChar)
Select Case nul
Case Is > 1
StripSingleNull= Left$(StrIn, nul - 1)
Case 1
StripSingleNull= " "
Case 0
StripSingleNull= Trim$(StrIn)
End Select
End Function

Public Function StripDblNull(ByVal StrIn As String) As String
Dim nul As Long
nul = InStr(StrIn, vbNullChar & vbNullChar)
Select Case nul
Case Is > 1
StripDblNull = Left$(StrIn, nul - 1)
Case 1
StripDblNull = " "
Case 0
StripDblNull = Trim$(StrIn)
End Select
End Function

读书人网 >VB

热点推荐