vb.net汉字2位 vb怎么输出汉字

VB.NET UNICODE码 显示Public Class Form1
Dim b() As Byte
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
b = System.Text.Encoding.Default.GetBytes(TextBox1.Text)
For i = 0 To UBound(b)
TextBox2.AppendText(i.ToString" ")
Next
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text = System.Text.Encoding.Default.GetString(b)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.Text = "Google free online translation service instantly translates text and web pages 。该翻译器支持: 中文(简体), 中文(繁体), shqip, 日本语, русский, langue fran?aise ..."
End Sub
End ClassVB.Net中用String类型表示字符串vb.net汉字2位,内部采用Unicode编码 。当需要在网络或串口中收发字符串时,就需要在String和Byte数组之间进行转换 , 这项功能可以通过System.Text.Encoding类实现 。
Private zeroChars() As Char = {ChrW(0)}
Dim descBytes() As Byte = System.Text.Encoding.Unicode.GetBytes(mDescription)
Dim description As String = System.Text.Encoding.Unicode.GetString(rBuffer, offset, length).TrimEnd(zeroChars)
说明:C语言中用'\0'表示字符串结束,而String类型中0是有效字符,显示时是空白字符,会占用显示宽度,可以用TrimEnd方法将字符串末尾vb.net汉字2位的零字符去掉 。
主要叙说一下StrConv 函数conversion参数最后两个值的含义和用途,并举例说明 。
1、语法
StrConv(string, conversion, LCID)
StrConv 函数的语法有下面的命名参数:
部分 说明
string 必要参数 。要转换的字符串表达式 。
conversion 必要参数 。Integer 。其值的和决定转换的类型 。
LCID 可选的 。如果与系统LocaleID不同,则为LocaleID(系统LocaleID为缺省值 。)
设置值
conversion 参数的设置值为:
常数 值 说明
vbUpperCase 1 将字符串文字转成大写 。
vbLowerCase 2 将字符串文字转成小写 。
vbProperCase 3 将字符串中每个字的开头字母转成大写 。
vbWide* 4* 将字符串中单字节字符转成双字节字符 。
vbNarrow* 8* 将字符串中双字节字符转成单字节字符 。
vbKatakana** 16** 将字符串中平假名字符转成片假名字符 。
vbHiragana** 32** 将字符串中片假名字符转成平假名字符 。
vbUnicode 64 根据系统的缺省码页将字符串转成 Unicode 。
vbFromUnicode 128 将字符串由 Unicode 转成系统的缺省码页 。
*应用到远东国别 。
**仅应用到日本 。
说明:前面3个参数比较简单 , 后面4个我们用不上,就不说vb.net汉字2位了 , 主要说说后面两个 。
2、ANSI 格式
语法中说的缺省码页就是ANSI模式,英文环境下 的ANSI 格式其实也就是ASCII码,其它环境就不一样了 , 比如中文环境,就是ASCII , 一个字节表示一个字符,GB2312 , 2个字节表示一个汉字,所以中文环境下的ANSI格式就是ASCII码+GB2312,早期的DOS系统中纯文本就是这种格式,这种格式下 , 通过最高位来判断是中文字符(最高位是1)还是ASCII字符(最高位是0) 。中文环境下保存文本文件时一般都采用ANSI格式,不过也有其vb.net汉字2位他格式 , 比如UTF-8 。
3、Unicode编码
Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码 。Unicode 是为了解决传统的字符编码方案的局限而产生的 , 它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求 。Unicode用两个字节表示一个字符,涵盖了世界上所有字符,和以前的字符集都不兼容,VB内部字符串就是采用Unicode编码,所以当我们打开一个文本文件读入数据的时候 , 其内存中的内容和文本文件的内容是不一样的,经过了转换,除非你采用二进制方式读入 。

推荐阅读