2010年5月31日 星期一

指定取字串長度

在VB6,必須判別ascii 是否超過128 區分:英文(1byte) 中文(2byte)
到了net直接利用ASCIIEncoding 處理

使用函數:

dim aa as string="一二三112233"
messagebox.show(Str_getbytes(aa,7))


指定抓字串函數:

Public Function Str_getbytes(ByVal str_tmp As String, ByVal str_len As Integer) As String
Dim return_str As String = ""
Try
Dim tmp_len As Integer = ASCIIEncoding.Default.GetByteCount(str_tmp.Trim)
If tmp_len > str_len Then
Dim strbyte As Byte() = ASCIIEncoding.Default.GetBytes(str_tmp)
return_str = ASCIIEncoding.Default.GetChars(strbyte, 0, str_len)
Else
return_str = str_tmp.Trim
End If
Return return_str
Catch ex As Exception
Return return_str
End Try
End Function

沒有留言:

張貼留言