美好的一天。有一個生成密碼的代碼。
Dim i_keys As Integer
Dim numKeys As Integer = 8
Dim chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*"
Dim stringChars = New Char(7) {} Char 7)
Dim random = New Random()
For i As Integer = 0 To stringChars. 長度-1
stringChars(i) = chars.Chars(random.Next(chars.Length))
Next i
Dim finalString = New String(stringChars)
For i_keys = 1 To numKeys
ListBox1.Items.Add(finalString)
Next
但結果是,我得到了如下結果:
0EbrQ4Pf
0EbrQ4Pf
0EbrQ4Pf
0EbrQ4Pf
0EbrQ4Pf
0EbrQ4Pf
0EbrQ4Pf
0EbrQ4Pf
告訴我,你如何使它在輸出端得到10個隨機(不重復)的密碼。
uj5u.com熱心網友回復:
你需要在最后一個回圈中包含更多的代碼
。Dim i_keys As Integer
Dim numKeys As Integer = 8
Dim chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*"
Dim random = New Random()
For i_keys = 1 To numKeys
Dim stringChars = New Char(7) {} 1
For i As Integer = 0 To stringChars. 長度-1
stringChars(i) = chars.Chars(random.Next(chars.Length))
Next i
Dim finalString = New String(stringChars)
ListBox1.Items.Add(finalString)
Next
uj5u.com熱心網友回復:
你的密碼生成器是在回圈之外的。這段代碼不是很優雅,但你可以這樣做(包括檢查密碼是否是唯一的):
你的密碼生成器在回圈之外。
Dim i_keys As Integer
Dim numKeys As Integer = 10
Dim chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*"
Dim stringChars = New Char(7) {} Char 7)
Dim random = New Random()
Dim finalString = New String(stringChars)
For i_keys = 1 To numKeys
For i As Integer = 0 To stringChars. 長度-1
stringChars(i) = chars.Chars(random.Next(chars.Length))
Next i
finalString = New String(stringChars)
If ListBox1.Items.Contains(finalString) then.
i_keys = i_keys -1。
else[/span
ListBox1.Items.Add(finalString)
結束 if
下一步
請嘗試使用List(Of String)這樣的資料型別來代替。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/325290.html
標籤:
