如何让vb6识别特殊字符

如题所示,VB6的文本框,表格,字符串变量,不识别某些特殊字符,比如«,此字符粘贴入文本框,或者赋值给变量之后,变成不可识别的字符,被用问号?替代了。如何让vb... 如题所示,VB6的文本框,表格,字符串变量,不识别某些特殊字符,比如 «,此字符粘贴入文本框,或者赋值给变量之后,变成不可识别的字符,被用问号?替代了。如何让vb6识别这些特殊字符呢? 展开
 我来答
chrrg877562884
2014-07-21 · 超过26用户采纳过TA的回答
知道答主
回答量:105
采纳率:0%
帮助的人:35万
展开全部
可以使用Encode 和 Decode 函数
下面是函数代码
'=======================================================
' 用途:将十六进制转化为二进制
' 输入:Hex(十六进制数)
' 输入数据类型:String
' 输出:HEX_to_BIN(二进制数)
' 输出数据类型:String
' 输入的最大数为2147483647个字符
'*******************************************************************
'<函数:Encode>
'作用:将字符串内容转化为16进制数据编码,其逆过程是Decode
'参数说明:
'strSource 需要转化的原始字符串
Public Function Encode(strEncode As String) As String
Dim i As Long
Dim chrTmp$
Dim ByteLower$, ByteUpper$
Dim strReturn$ '存储转换后的编码

For i = 1 To Len(strEncode)
chrTmp$ = Mid(strEncode, i, 1)
ByteLower$ = Hex$(AscB(MidB$(chrTmp$, 1, 1)))
If Len(ByteLower$) = 1 Then ByteLower$ = "0" & ByteLower$
ByteUpper$ = Hex$(AscB(MidB$(chrTmp$, 2, 1)))
If Len(ByteUpper$) = 1 Then ByteUpper$ = "0" & ByteUpper$
strReturn$ = strReturn$ & ByteUpper$ & ByteLower$
Next

Encode = strReturn$
End Function
'</函数:Encode>
'*******************************************************************

'*******************************************************************
'<函数:Decode>
'作用:将16进制数据编码转化为字符串,是Encode的逆过程
Public Function Decode(strDecode As String) As String
Dim i As Long
Dim strCode$ '存储转换后的编码
Dim chrTmp$

On Error GoTo ErrProc

If Len(strDecode) Mod 4 <> 0 Then GoTo ErrProc
For i = 1 To Len(strDecode) Step 4
strCode = Mid$(strDecode, i, 4)
chrTmp$ = ChrW("&H" & strCode)
If chrTmp$ = "?" Then If strCode <> "003F" Then GoTo ErrProc
Decode = Decode & chrTmp$
Next

Exit Function
ErrProc:
Decode = strDecode
'DealwithEvents "不能解析的消息:" & strDecode
End Function
'==================================================================

将字符转换成VB6可识别的字符(将字符串内容转化为16进制数据)
追问
需要直接在文本框中录入特殊字符,而不是转换!文本框都无法录入特殊字符,哪来后续的转换呢?无米之炊了!
追答

添加控件

选择控件

于是:

特殊字符基本就出来了

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式