在任何一种语言中都有一种简单的方法可以快速生成大量的随机数据到目前为止,当我需要生成一组500,000个字符时,我尝试过的所有函数都运行得不好:(任何想法?
答案 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。至少这些块会更大。