生成大量随机数据集vb6 / vb net

时间:2008-12-01 23:18:59

标签: vb.net vb6

在任何一种语言中都有一种简单的方法可以快速生成大量的随机数据到目前为止,当我需要生成一组500,000个字符时,我尝试过的所有函数都运行得不好:(任何想法?

3 个答案:

答案 0 :(得分:3)

  

使用UUIDGen。

别。 GUID并不是随机的。实际上,您可以使用VB.NET中的System.Random类快速生成大量数据。 500,000个字符/字节没问题:

Dim buffer As Byte() = Nothing
Array.Resize(buffer, 500000)
Call New Random().NextBytes(buffer)
My.Computer.FileSystem.WriteAllBytes("filename", buffer, False)

此代码相当不到一秒钟。

答案 1 :(得分:0)

在VB6中代码会像这样

Public Function FillRandomCol() as Collection
    Dim C As Collection
    Dim I As Long
    Set C = New Collection
    Randomize Timer
    For I = 1 To 500000
        C.Add RandomChar
    Next I
    Set FillRandomCol = C
End Sub

Public Function Random(ByVal Number As Integer) As Integer
    Random = CLng(Rnd * 1000000) Mod Number + 1
End Function

Public Function RandomChar() As String
    Const AlphaNum = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    RandomChar = Mid$(AlphaNum, Random(36), 1)
End Function

在2核Intel 2.40 GHz计算机上花费1/2秒。

答案 2 :(得分:-1)

使用UUIDGen。至少这些块会更大。