请问在VB中如何将unicode转换成GBK码发送,要任意字符串的。这是一段文字转成unicode的,然后再转成gbk

PrivateSubCommand1_Click()OnErrorResumeNextDimaaAsStringDimbbAsStringDimccAsStringDim... Private Sub Command1_Click() On Error Resume Next Dim aa As String Dim bb As String Dim cc As String Dim strTemp As String Dim i As Long aa = Text1.Text cc = "00" For i = 0 To Len(aa) - 1 bb = Mid(aa, i + 1, 1) If Asc(bb) < 0 Then strTemp = strTemp & Hex(AscW(Mid(aa, i + 1, 1))) ElseIf Asc(bb) > 0 Then strTemp = strTemp & cc & Hex(AscW(Mid(aa, i + 1, 1))) End If Next i Text2.Text = strTempEnd Sub 展开
 我来答
涐吢铱舊囿儚
2013-12-20 · TA获得超过489个赞
知道小有建树答主
回答量:512
采纳率:100%
帮助的人:598万
展开全部

GBK编码与Unicode编码“兼容”,应该说它们的编码是一致的吧?

也就是说你转换出的Unicode编码就是你要的GBK编码呀。


如果要转换成你要的这种“格式”的Unicode编码,For循环中没必要用If去判断。

这样就行了:

strTemp = ""
For i = 1 To Len(aa)
   strTemp = strTemp & Right$("0000" & Hex$(AscW((Mid$(aa, i, 1)))), 4)
Next
Text2.Text = strTemp
追问
2个的编码表都不一样啊
追答
那你试试把 AscW( ) 改成 Asc( )看看,转换出的编码是否对的(就是把那个W去掉)。

我查“LocalID 列表”,这里面没有 GBK 这个代码页。
我想,如果GBK编码不是用的Unicode编码,那么GB2312汉字的编码在GBK中应该是相同的。
blacklong
2013-12-20 · TA获得超过1502个赞
知道大有可为答主
回答量:2745
采纳率:0%
帮助的人:1293万
展开全部
StrConv("嘎嘎亚亚hello", vbFromUnicode)

结果就是GBK编码的了~~

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我要的未来000
2013-12-20 · 崇尚科技,热爱科学。加油吧,少年!
我要的未来000
采纳数:217 获赞数:751

向TA提问 私信TA
展开全部
如果是为了字符传输、而保证接收方不出现问题的话、也可以采用先转换为url编码然后接收方反编译就可以了。我以前做的.NET与PHP就是使用这种形式处理的。
具体转码方法可以参考一下http://zhidao.baidu.com/link?url=czyDy14UlLEud5ov2bCA4A9LCnB8BHOlsMGRdmOKLGjuNrlYF4xiPha9FHS1Tm31ItD8_sU6MfeLMpg4YLzfAq
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式