请问我如何能将得到的汉字区位码转换成汉字啊?

yanzeyuan 2004-05-06 09:38:00
问题同上

譬如: “海” 的区位码是2603 我得到了2603这4个数字以后,用什么方法让他变成海字!


谢谢!
...全文
104 5 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
BlueBeer 2004-05-07
好,长见识~
  • 打赏
  • 举报
回复
northwolves 2004-05-07
Private Sub Command1_Click()
MsgBox quwei("海")
MsgBox hanzi(2603)
End Sub
Function quwei(ByVal x As String) As String
If Asc(x) >= 0 Then Exit Function
x = Hex(Asc(x))
quwei = Format(CDec("&H" & Left(x, 2)) - 160, "00") & Format(CDec("&H" & Right(x, 2)) - 160, "00")
End Function
Function hanzi(ByVal x As String) As String
hanzi = Chr("&H" & Hex(Val(Left(x, 2)) + 160) & Hex(Val(Right(x, 2)) + 160))
End Function
  • 打赏
  • 举报
回复
BlueBeer 2004-05-06
'用这个函数可以把区位码转换成对应的汉字
Function QW2HZ(QWM As Long) As String
Dim tmp(1) As Byte
tmp(0) = 160 + QWM \ 100
tmp(1) = 160 + QWM Mod 100
QW2HZ = StrConv(tmp(), vbUnicode)
End Function

QW2HZ(2603)就可以返回"海"字

其实这个问题我不会:)
上面的函数是根据楼上的代码改的,分请给楼上的老师~
  • 打赏
  • 举报
回复
KiteGirl 2004-05-06
Private Sub Command1_Click()
Dim tBytes() As Byte
ReDim tBytes(1)
tBytes(1) = 3 + 160
tBytes(0) = 26 + 160
Text1.Text = StrConv(tBytes(), vbUnicode)
End Sub
  • 打赏
  • 举报
回复
AustinLei 2004-05-06
Dim bArr(1) As Byte
Dim sMe as String
bArr(0) = 206
bArr(1) = 210
sMe = StrConv(bArr, vbUnicode)
  • 打赏
  • 举报
回复
发帖
VB基础类

7617

社区成员

VB 基础类
社区管理员
  • VB基础类社区
加入社区
帖子事件
创建了帖子
2004-05-06 09:38
社区公告
暂无公告