首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在VB.Net中生成7位随机数/特殊字符串?

如何在VB.Net中生成7位随机数/特殊字符串?
EN

Stack Overflow用户
提问于 2010-12-01 14:06:59
回答 2查看 5.1K关注 0票数 0

在VB.Net中,如何在按钮单击事件的文本框中生成7位随机数和特殊字符串?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-01 14:39:24

将您想要的字符放入字符串中,然后从中选取:

代码语言:javascript
复制
Dim chars As String = "0123456789abcdefghijklmnopqrstuvwxyz!#%&()?+-;:"
Dim word As Char() = New Char(6)
Dim rnd As New Random()
For i As Integer = 0 To word.Length - 1
  word(i) = chars.Chars(rnd.Next(chars.Length))
Next
TheTextBox.Text = New String(word)
票数 3
EN

Stack Overflow用户

发布于 2014-10-02 11:00:18

下面是我使用的一个轻量级版本:

代码语言:javascript
复制
Protected Function GetRandomPass() As String
    Dim pass As String = String.Empty
    Dim AllowedChars() As String = {"ABCDEFGHJKLMNPQRSTWXYZ", "abcdefghjklmnpqrstwxyz", "0123456789"}
    Dim rnd = New Random()
    While pass.Length < 10
        Dim rndSet As Integer = rnd.Next(0, AllowedChars.Length)
        pass &= AllowedChars(rndSet).Substring(rnd.Next(0, AllowedChars(rndSet).Length), 1)
    End While
    Return pass
End Function

它选择AllowedChars()数组的随机索引,然后使用substring属性在该索引中选择一个随机字符,并将其附加到pass字符串,当字符串达到定义的长度时,它将返回随机生成的密码。

这样,您可以将字符类型分开,还可以向AllowedChars()数组添加更多项,而无需编辑函数的其余部分

我知道你可以用一个普通的字符串来做这件事,并从中得到一个随机的数字,但我更喜欢看到大写、小写和substring /($pec|@|_)字符之间的区别。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4321686

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档