vb.net生成字符 vb創(chuàng)建字典

vb.net隨機(jī)產(chǎn)生英文字母的代碼

1.隨機(jī)產(chǎn)生英文字母

奉新ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!

Randomize() '功 能:初始化隨機(jī)數(shù)發(fā)生器

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

'Rnd 函數(shù)返回小于 1 但大于或等于 0 的值。

'0 = Rnd() * 26 26 是含小數(shù)位的數(shù)

'Int(Rnd() * 26) 轉(zhuǎn)換為整型,就是0~25的隨機(jī)數(shù)

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

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

'Asc("a") + Int(Rnd() * 26)為97到122的隨機(jī)數(shù)

'Chr()又可以起到轉(zhuǎn)換成字符的功能,Chr(97)表示a (a轉(zhuǎn)換成數(shù)值又是Asc("a")=97)

'Chr(Asc("a") + Int(Rnd() * 26))就是a~z的隨機(jī)數(shù)了

Randomize() '再次初始化隨機(jī)數(shù)發(fā)生器

Me.txt2.Text = Chr(Asc("A") + Int(Rnd() * 26)) '這里是A~Z的隨機(jī)數(shù)

'也可以換這種寫法

Randomize()

Me.txt1.Text = Chr(Int((26 * Rnd()) + 97)) '這里是a~z的隨機(jī)數(shù)

'這是在你知道ASCII碼的情況之下(a~z為97~122,A~Z為65~90)

'Rnd()為0~0.9999999.....的隨機(jī)數(shù)

' 26 * Rnd()為0~25.9999...的隨機(jī)數(shù)

'Int((26 * Rnd())為0~25的隨機(jī)數(shù)

'Int((26 * Rnd()) + 97)為97~122的隨機(jī)數(shù)

'Chr(Int((26 * Rnd()) + 97))就是a~z的隨機(jī)數(shù)了

Randomize()

Me.txt2.Text = Chr(Int((26 * Rnd()) + 65)) '這里是A~Z的隨機(jī)數(shù)

'至于同時(shí)在一處隨機(jī)大寫或小寫,ASCII碼的數(shù)字又不挨在一起(65-90,97-122),比較麻煩。想寫的話,你可以自己想一下怎么辦

2.數(shù)字怎樣轉(zhuǎn)換成ASCII碼所對(duì)應(yīng)的字母

Chr()函數(shù)將數(shù)字轉(zhuǎn)換成ASCII對(duì)應(yīng)的字母,Asc()函數(shù)將字母根據(jù)ASCII表轉(zhuǎn)換成數(shù)字

Chr(97)表示a (a轉(zhuǎn)換成數(shù)值又是Asc("a")=97)

3.加到數(shù)組,你可以放在一個(gè)for循環(huán)里

比如

Dim arylst1 As New ArrayList

Dim arr1() As String '數(shù)組

Dim str1 As String

For i As Integer = 1 To 15 '比如我想要15個(gè)隨機(jī)字母

Randomize()

str1 = Chr(Int((26 * Rnd()) + 65)) '這里是A~Z的隨機(jī)數(shù)

arylst1.Add(str1)

Next

ReDim arr1(arylst1.Count - 1) '這里是為了比較動(dòng)態(tài),可以只改變 i 的范圍來(lái)決定要多少個(gè)隨機(jī)字母

'當(dāng)然也可以寫死,在前面直接定義為 arr1(14),下次要改的時(shí)候就要改定義的地方和i的范圍,改兩個(gè)地方

arylst1.CopyTo(arr1)

'就把數(shù)值拷貝到數(shù)組里面了

如何用VB.NET生成一個(gè)隨機(jī)字符串

用法 RndString(xx) xx為隨機(jī)數(shù)字長(zhǎng)度

比如12位長(zhǎng)度的隨機(jī)字符串 則為 RndString(12)

字符串包含數(shù)字和大小寫字母,函數(shù)如下:

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) '隨機(jī)生成的字符有大小寫字母和數(shù)字,共有26個(gè)

If R 10 Then '如果小于10,則是數(shù)字 數(shù)字的ASCII是48-57 對(duì)應(yīng) 隨機(jī)數(shù)字 0-9 所以要將隨機(jī)數(shù)字加48

S = Chr(R + 48) 'Chr 是將把數(shù)字按Ascii碼轉(zhuǎn)換為對(duì)應(yīng)的字符

ElseIf R 36 Then '如果小于36,則是大寫字母 大寫字母的ASCII是65-90 對(duì)應(yīng) 隨機(jī)數(shù)字10-35 所以要將隨機(jī)數(shù)字加55

S = Chr(R + 55)

Else '如果大于36,則是小寫字母 小寫字母的ASCII是97-122 對(duì)應(yīng) 隨機(jī)數(shù)字36-62 所以要將隨機(jī)數(shù)字加61

S = Chr(R + 61)

End If

returnStr = returnStr + S

Next

RndString = returnStr

End Function

用VB.NET將字節(jié)數(shù)組轉(zhuǎn)換為字符串

最近我說(shuō)明了用VB NET將字符串轉(zhuǎn)換成字節(jié)數(shù)組的方法 如果你需要將一個(gè)字節(jié)數(shù)組轉(zhuǎn)換成字符串 可以使用BitConverter ToString或Covert ToBase String方法 下面我提供實(shí)例說(shuō)明如何用上兩種方法進(jìn)行轉(zhuǎn)換

字節(jié)數(shù)組用法

如果你準(zhǔn)備恢復(fù)用二進(jìn)制格式保存的文本 在System Text命名空間中調(diào)用適當(dāng)編碼對(duì)象的GetString方法

使用System BitConverter類是將一個(gè)字節(jié)數(shù)組轉(zhuǎn)換成字符串的最快捷的方法 這個(gè)類為基本數(shù)據(jù)類型和字節(jié)數(shù)組之間的轉(zhuǎn)換提供方法 要使用這個(gè)方法 使用超載的ToString方法接受一個(gè)字節(jié)數(shù)組為參數(shù) 在這種情況下 字符串中包括字節(jié)數(shù)組的每一個(gè)十六進(jìn)制格式的值 數(shù)值間用破折號(hào)隔開 使用字符串沒有辦法自動(dòng)撤銷轉(zhuǎn)換 恢復(fù)原始的字節(jié)數(shù)組 查看列表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 編碼 也可以把字節(jié)數(shù)組轉(zhuǎn)換成字符串 在Base 編碼中 每個(gè)三字節(jié)的序列被轉(zhuǎn)換為四個(gè)字節(jié) 每個(gè)Base 編碼字符為值域中 個(gè)可能值中的一個(gè) 查看列表B中的例子

Listing B

Private Sub ConvertByteArrayToString()??????? Dim btText() As Byte = { }??????? Dim strText As String??????? strText = Convert ToBase String(btText)??????? MessageBox Show(strText)??? End Sub???? 以上兩種方法都可以用來(lái)建立一個(gè)二進(jìn)制數(shù)據(jù)表示法 記住 為了將一個(gè)字節(jié)數(shù)組恢復(fù)成真實(shí)的文本信息 你必須使用正確的編碼類

lishixinzhi/Article/program/net/201311/11708

網(wǎng)站標(biāo)題:vb.net生成字符 vb創(chuàng)建字典
本文來(lái)源:http://muchs.cn/article32/hgegpc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)搜索引擎優(yōu)化、微信小程序網(wǎng)站改版、外貿(mào)建站、標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)