vb.net文字转简码 vb编码转换函数

gb2312>unicode>utf8, 以及逆转的方法'>VB.net 字符转换问题 字符(汉字、数字、字母、符号)>gb2312>unicode>utf8, 以及逆转的方法

字符编码转换吗?

创新互联专业为企业提供右江网站建设、右江做网站、右江网站设计、右江网站制作等企业网站建设、网页设计与制作、右江企业网站模板建站服务,10多年右江做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

1.字符与gb2312(gbk的子集):

Public Function GBKEncode(ByVal sInput As String) As String

Dim ret_GBKEncode As String = ""

Dim i As Integer

Dim startIndex As Integer = 0

Dim endIndex As Integer

Dim x() As Byte = System.Text.Encoding.Default.GetBytes(sInput) '字符以及字符串在vb2008中都是以unicode编码存储的

endIndex = x.Length - 1

For i = startIndex To endIndex

ret_GBKEncode = "%" Hex(x(i))

Next

Return ret_GBKEncode

End Function

'GBK解码

Public Function GBKDecode(ByVal sInput As String) As String

sInput = sInput.Replace("%", "")

Dim ret_GBKDecode As String = ""

Dim sLen As Integer = sInput.Length

Dim n As Integer = sLen \ 2

Dim sBytes(0 To n - 1) As Byte

'转化为字节码

For i As Integer = 1 To n

sBytes(i - 1) = CByte("H" sInput.Substring(2 * i - 2, 2))

Next

'将字节码转化为字符串

ret_GBKDecode = System.Text.Encoding.Default.GetString(sBytes)

Return ret_GBKDecode

End Function

2.Unicode字符串为UTF-8

Imports System.Text

Public Function StringAsUtf8Bytes(ByVal strData As String) As Byte()

Dim bytes() As Byte

bytes = Encoding.UTF8.GetBytes(strData)

Return bytes

End Function

'这里可以类推出好几种。

vb.net 如何吧字符穿转换成键盘码

(1)在Form1上布置一个Label,用来显示键盘码

(2)窗体代码如下

Imports System.Windows.Forms

Imports System.IO

Imports System.Net

Imports System.Windows.Forms

Imports System.IO

Imports System.Net

Public Class Form1

Private Sub Form1_Load(sender As Object,

e As EventArgs) Handles MyBase.Load

KeyPreview = True

End Sub

Private Sub Form1_KeyDown(sender As Object,

e As KeyEventArgs) Handles MyBase.KeyDown

Label1.Text = e.KeyValue

End Sub

End Class

按键盘上的键,Label1将显示对应键的键盘码

vb.net怎么把汉字转换为GB2312编码,例如“广东”变成%B9%E3%B6%AB

GB2312是GBK编码的子集,使用GBK编码函数即可

'GBK编码(结果以百分号%进行分隔)

Public Function GBKEncode(ByVal sInput As String) As String

Dim ret_GBKEncode As String = ""

Dim i As Integer

Dim startIndex As Integer = 0

Dim endIndex As Integer

Dim x() As Byte = System.Text.Encoding.Default.GetBytes(sInput) '字符以及字符串在vb2008中都是以unicode编码存储的

endIndex = x.Length - 1

For i = startIndex To endIndex

ret_GBKEncode = "%" Hex(x(i))

Next

Return ret_GBKEncode

End Function

'GBK解码

Public Function GBKDecode(ByVal sInput As String) As String

sInput = sInput.Replace("%", "")

Dim ret_GBKDecode As String = ""

Dim sLen As Integer = sInput.Length

Dim n As Integer = sLen \ 2

Dim sBytes(0 To n - 1) As Byte

'转化为字节码

For i As Integer = 1 To n

sBytes(i - 1) = CByte("H" sInput.Substring(2 * i - 2, 2))

Next

'将字节码转化为字符串

ret_GBKDecode = System.Text.Encoding.Default.GetString(sBytes)

Return ret_GBKDecode

End Function

vb.net 2008 如何将简体中文跟繁体中文互转呢?

原来还有这么个功能,那有没有转换为拼音的方法?

我比你运气好,两个都有效:

Public Class Form1

Private Declare Function LCMapString Lib "kernel32" Alias "LCMapStringA" (ByVal Locale As Integer, ByVal dwMapFlags As Integer, ByVal lpSrcStr As String, ByVal cchSrc As Integer, ByVal lpDestStr As String, ByVal cchDest As Integer) As Integer

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim cString As String = "中华人民共和国"

cString = (StrConv(cString, VbStrConv.TraditionalChinese))

MsgBox(cString)

cString = (StrConv(cString, VbStrConv.SimplifiedChinese))

MsgBox(cString)

Dim rString As String = Space(14)

LCMapString(H804, H4000000, cString, 14, rString, 14)

MsgBox(rString)

cString = rString

LCMapString(H804, H2000000, cString, 14, rString, 14)

MsgBox(rString)

End Sub

End Class

StrConv参数不对,api 函数Long型要改为Integer类型。


文章名称:vb.net文字转简码 vb编码转换函数
分享链接:http://bzwzjz.com/article/hhcdcp.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都品牌网站设计 H5网站制作 企业手机网站建设 网站制作 成都网站制作 定制网站建设多少钱 成都网站设计 外贸网站建设 成都网站制作 成都网站设计 重庆手机网站建设 教育网站设计方案 定制网站建设 成都网站建设 成都h5网站建设 网站设计公司 商城网站建设 上市集团网站建设 定制网站设计 成都网站建设 温江网站设计 网站制作