十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
numHex =Integer.Parse(strHex, Globalization.NumberStyles.AllowHexSpecifier)
创新互联-专业网站定制、快速模板网站建设、高性价比茅箭网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式茅箭网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖茅箭地区。费用合理售后完善,十年实体公司更值得信赖。
或
numHex = Integer. Parse("H" strHex)
本文介绍了各种编码类型,然后讨论了将字符串转换成字节数组的方法。编码类型用二进制形式描述一个字符串变量有很多种方式。用来实现该功能的编码对象依赖于你选择的编码。下面是程序开发人员经常使用的编码类型:ASCII:将字符串中的每个字符使用7个比特编码。这种编码类型不能包含扩展的Uincode字符。Full Unicode(UTF-16):将字符串中的每个字符使用16个比特编码。这种情况下对每个字符一个字节数组含有两个字节。UTF-7:对于普通的ASCII字符使用7比特编码,对于扩展字符使用多个7比特对编码。这种编码类型最常用于7比特协议中如mail等。UTF-8:对于普通的ASCII字符使用8比特编码,对于扩展字符使用多个8比特对编码。这种情况下对每个字符一个字节数组包含一个字节。
最近我说明了用VB NET将字符串转换成字节数组的方法 如果你需要将一个字节数组转换成字符串 可以使用BitConverter ToString或Covert ToBase String方法 下面我提供实例说明如何用上两种方法进行转换
字节数组用法
如果你准备恢复用二进制格式保存的文本 在System Text命名空间中调用适当编码对象的GetString方法
使用System BitConverter类是将一个字节数组转换成字符串的最快捷的方法 这个类为基本数据类型和字节数组之间的转换提供方法 要使用这个方法 使用超载的ToString方法接受一个字节数组为参数 在这种情况下 字符串中包括字节数组的每一个十六进制格式的值 数值间用破折号隔开 使用字符串没有办法自动撤销转换 恢复原始的字节数组 查看列表A中的例子
Listing A
Private Sub ConvertByteArrayToString() Dim btText() As Byte = { } Dim strText As String strText = BitConverter ToString(btText) MessageBox Show(strText) End Sub 通过System Convert类的ToBase String和FromBase Stirng方法 利用Base 编码 也可以把字节数组转换成字符串 在Base 编码中 每个三字节的序列被转换为四个字节 每个Base 编码字符为值域中 个可能值中的一个 查看列表B中的例子
Listing B
Private Sub ConvertByteArrayToString() Dim btText() As Byte = { } Dim strText As String strText = Convert ToBase String(btText) MessageBox Show(strText) End Sub 以上两种方法都可以用来建立一个二进制数据表示法 记住 为了将一个字节数组恢复成真实的文本信息 你必须使用正确的编码类
lishixinzhi/Article/program/net/201311/11708
字符编码转换吗?
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
'这里可以类推出好几种。
使用类型转换函数CSByt或CByte
如:CSByt(Integer)
Byte 数据类型扩大 Short、 UShort、 Integer、 UInteger、 Long、 ULong、 Decimal、 Single 或 Double。可以将 Byte 转换为这些类型中的任何类型,而不会遇到 System .OverflowException 错误
for一下,将bytes中的字节转为short,for中就可以将要使用的short进行处理了