网站建设资讯

NEWS

网站建设资讯

vb.net生成字符 vb创建字典

vb.net随机产生英文字母的代码

1.随机产生英文字母

奉新ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

Randomize() '功 能:初始化随机数发生器

Me.txt1.Text = Chr(Asc("a") + Int(Rnd() * 26))

'Rnd 函数返回小于 1 但大于或等于 0 的值。

'0 = Rnd() * 26 26 是含小数位的数

'Int(Rnd() * 26) 转换为整型,就是0~25的随机数

'Asc("a") 得到a的ASCii数值,是整数97(A是65)

'a~z的ASCii为97~122 ,即为a~z之间的字母为97加(0~25)

'Asc("a") + Int(Rnd() * 26)为97到122的随机数

'Chr()又可以起到转换成字符的功能,Chr(97)表示a (a转换成数值又是Asc("a")=97)

'Chr(Asc("a") + Int(Rnd() * 26))就是a~z的随机数了

Randomize() '再次初始化随机数发生器

Me.txt2.Text = Chr(Asc("A") + Int(Rnd() * 26)) '这里是A~Z的随机数

'也可以换这种写法

Randomize()

Me.txt1.Text = Chr(Int((26 * Rnd()) + 97)) '这里是a~z的随机数

'这是在你知道ASCII码的情况之下(a~z为97~122,A~Z为65~90)

'Rnd()为0~0.9999999.....的随机数

' 26 * Rnd()为0~25.9999...的随机数

'Int((26 * Rnd())为0~25的随机数

'Int((26 * Rnd()) + 97)为97~122的随机数

'Chr(Int((26 * Rnd()) + 97))就是a~z的随机数了

Randomize()

Me.txt2.Text = Chr(Int((26 * Rnd()) + 65)) '这里是A~Z的随机数

'至于同时在一处随机大写或小写,ASCII码的数字又不挨在一起(65-90,97-122),比较麻烦。想写的话,你可以自己想一下怎么办

2.数字怎样转换成ASCII码所对应的字母

Chr()函数将数字转换成ASCII对应的字母,Asc()函数将字母根据ASCII表转换成数字

Chr(97)表示a (a转换成数值又是Asc("a")=97)

3.加到数组,你可以放在一个for循环里

比如

Dim arylst1 As New ArrayList

Dim arr1() As String '数组

Dim str1 As String

For i As Integer = 1 To 15 '比如我想要15个随机字母

Randomize()

str1 = Chr(Int((26 * Rnd()) + 65)) '这里是A~Z的随机数

arylst1.Add(str1)

Next

ReDim arr1(arylst1.Count - 1) '这里是为了比较动态,可以只改变 i 的范围来决定要多少个随机字母

'当然也可以写死,在前面直接定义为 arr1(14),下次要改的时候就要改定义的地方和i的范围,改两个地方

arylst1.CopyTo(arr1)

'就把数值拷贝到数组里面了

如何用VB.NET生成一个随机字符串

用法 RndString(xx) xx为随机数字长度

比如12位长度的随机字符串 则为 RndString(12)

字符串包含数字和大小写字母,函数如下:

Function RndString(ByVal l As Integer) As String

Randomize()

Dim R, i As Integer

Dim S As Char

Dim returnStr As String

returnStr = ""

'a-z 的ASCII码是:97-122

'A-Z 的ASCII码是:65-90

'0-9 的ASCII码是:48-57

For i = 1 To l

R = Int(Rnd() * 62) '随机生成的字符有大小写字母和数字,共有26个

If R 10 Then '如果小于10,则是数字 数字的ASCII是48-57 对应 随机数字 0-9 所以要将随机数字加48

S = Chr(R + 48) 'Chr 是将把数字按Ascii码转换为对应的字符

ElseIf R 36 Then '如果小于36,则是大写字母 大写字母的ASCII是65-90 对应 随机数字10-35 所以要将随机数字加55

S = Chr(R + 55)

Else '如果大于36,则是小写字母 小写字母的ASCII是97-122 对应 随机数字36-62 所以要将随机数字加61

S = Chr(R + 61)

End If

returnStr = returnStr + S

Next

RndString = returnStr

End Function

用VB.NET将字节数组转换为字符串

最近我说明了用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


标题名称:vb.net生成字符 vb创建字典
网站网址:http://cdweb.net/article/hgegpc.html