vb.net汉字字符串 vb字符串中字符位置

vb.net怎么判断一个字符串中是否包含汉字str="hello,everybody. "返回false , 位置0 。(不含汉字和汉语标点符号)
str="hello,ererybody 。"返回false , 位置16 。(最后一个句号是汉语标点符号)
先谢过大家了!
VB.net 如何获得中文字符串的长度?上面思路是正确vb.net汉字字符串的vb.net汉字字符串,用ascw 函数也可以
private function LenC( ps as string ) as Integer
Dim n As Integer
Dim StrLen As Integer
For n = 1 To Len(Text1.Text)
If Ascw(Mid(Text1.Text, n, 1)) 256 Then
StrLen = StrLen + 2
Else
StrLen = StrLen + 1
Next n
return strLen
end function
gb2312>unicode>utf8,以及逆转的方法'>VB.net 字符转换问题 字符(汉字、数字、字母、符号)>gb2312>unicode>utf8, 以及逆转的方法字符编码转换吗?
1.字符与gb2312(gbkvb.net汉字字符串的子集)vb.net汉字字符串:
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编码存储vb.net汉字字符串的
【vb.net汉字字符串 vb字符串中字符位置】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汉字字符串和vb字符串中字符位置的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读