国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

VB.NET生成隨機串或隨機數字的方法總結

2024-07-10 13:31:32
字體:
來源:轉載
供稿:網友

本文一共介紹了5種生成隨機數方式,具體如下:

第一種:轉載的方法

Public Enum stringtype    allstring = 1    '大小寫字母    allnumic = 2    '數字    str_num = 3    '大小寫字母+數字    str_upper = 4    '大寫字母    str_lower = 5 '大寫字母    End Enum  Function GenerateRandom(ByVal Length As Integer, ByVal s As stringtype) As String    Dim strtemp As String = ""    Dim constant() As String = Nothing    Select Case s      Case stringtype.allnumic        strtemp = "0,1,2,3,4,5,6,7,8,9"        constant = strtemp.Split(",")      Case stringtype.allstring        strtemp = "a,b,c,d,e,f,g,h,i,j,k,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,D,G,H,I,J,K,L,M,N,P,Q,R,S,T,U,V,W,X,X,Y,Z"        constant = strtemp.Split(",")      Case stringtype.str_lower        strtemp = "a,b,c,d,e,f,g,h,i,j,k,m,n,o,p,q,r,s,t,u,v,w,x,y,z"        constant = strtemp.Split(",")      Case stringtype.str_num        strtemp = "a,b,c,d,e,f,g,h,i,j,k,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,D,G,H,I,J,K,L,M,N,P,Q,R,S,T,U,V,W,X,X,Y,Z,0,1,2,3,4,5,6,7,8,9"        constant = strtemp.Split(",")      Case stringtype.str_upper        strtemp = "A,B,C,E,F,D,G,H,I,J,K,L,M,N,P,Q,R,S,T,U,V,W,X,Y,Z"        constant = strtemp.Split(",")    End Select    Dim NewRandom As System.Text.StringBuilder = New System.Text.StringBuilder(Length)    Dim rd As Random = New Random()    Dim i As Integer    For i = 0 To Length - 1 Step i + 1      NewRandom.Append(constant(rd.Next(constant.Length - 1)))    Next    Return NewRandom.ToString()  End Function

第二種:網上查找

Public Function GetOAuthNonce() As String ' 得到隨機值    Dim result As String = System.Guid.NewGuid().ToString()    result = result.Replace("-", "")    Return result.Substring(0, 10)  End Function
Public Function RandCode(ByVal n As Integer) As String    Dim arrChar As Char() = New Char() {"a"c, "b"c, "d"c, "c"c, "e"c, "f"c, _                      "g"c, "h"c, "i"c, "j"c, "k"c, "l"c, _                      "m"c, "n"c, "p"c, "r"c, "q"c, "s"c, _                      "t"c, "u"c, "v"c, "w"c, "z"c, "y"c, _                      "x"c, "0"c, "1"c, "2"c, "3"c, "4"c, _                      "5"c, "6"c, "7"c, "8"c, "9"c, "A"c, _                      "B"c, "C"c, "D"c, "E"c, "F"c, "G"c, _                      "H"c, "I"c, "J"c, "K"c, "L"c, "M"c, _                      "N"c, "Q"c, "P"c, "R"c, "T"c, "S"c, _                      "V"c, "U"c, "W"c, "X"c, "Y"c, "Z"c}    Dim num As New StringBuilder()    Dim rnd As New Random(DateTime.Now.Millisecond)    For i As Integer = 0 To n - 1      num.Append(arrChar(rnd.[Next](0, arrChar.Length)).ToString())    Next    Return num.ToString()  End Function

第三種:原來是C#轉換

Public Function RandCode(ByVal n As Integer) As String    Dim arrChar As Char() = New Char() {"a"c, "b"c, "d"c, "c"c, "e"c, "f"c, _                      "g"c, "h"c, "i"c, "j"c, "k"c, "l"c, _                      "m"c, "n"c, "p"c, "r"c, "q"c, "s"c, _                      "t"c, "u"c, "v"c, "w"c, "z"c, "y"c, _                      "x"c, "0"c, "1"c, "2"c, "3"c, "4"c, _                      "5"c, "6"c, "7"c, "8"c, "9"c, "A"c, _                      "B"c, "C"c, "D"c, "E"c, "F"c, "G"c, _                      "H"c, "I"c, "J"c, "K"c, "L"c, "M"c, _                      "N"c, "Q"c, "P"c, "R"c, "T"c, "S"c, _                      "V"c, "U"c, "W"c, "X"c, "Y"c, "Z"c}    Dim num As New StringBuilder()    Dim rnd As New Random(DateTime.Now.Millisecond)    For i As Integer = 0 To n - 1      num.Append(arrChar(rnd.[Next](0, arrChar.Length)).ToString())    Next    Return num.ToString()  End Function

第四種:利用VB6轉換

Function makeRand(ByVal maxLen As Integer) As String '生成簽名時用隨機串    Dim strNewPass As String = vbNullString    Dim lower As Long    Dim whatsNext As Long    Dim upper As Long    Dim intCounter As Long    Randomize()    For intCounter = 1 To maxLen      whatsNext = Int((1 - 0 + 1) * Rnd() + 0)      If whatsNext = 0 Then        upper = 122        lower = 100      Else        upper = 57        lower = 48      End If      strNewPass = strNewPass & Chr(Int((upper - lower + 1) * Rnd() + lower))    Next    makeRand = strNewPass  End Function

第五種:直接用VB.NET函數

  Dim rand As Random = New System.Random(10)‘這里10就代表是10為   Debug.Print(rand.Next().ToString)

原文鏈接:http://blog.csdn.net/lcp58006478/article/details/8958460

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到ASP.NET教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴宁市| 渑池县| 湖北省| 曲阳县| 北宁市| 扬中市| 鹤山市| 门源| 乐亭县| 吉林省| 乌恰县| 盈江县| 高要市| 乌兰浩特市| 山阳县| 江北区| 肃北| 黎川县| 阿瓦提县| 钦州市| 都安| 南部县| 宁武县| 天等县| 阳山县| 盐池县| 绥中县| 平陆县| 新营市| 德安县| 忻城县| 高唐县| 桐柏县| 莲花县| 武邑县| 西乡县| 巨野县| 苍溪县| 涟水县| 自贡市| 吕梁市|