SORU
13 Temmuz 2009, PAZARTESİ


Rastgele Dize Jeneratör Dönen Aynı Dize

Rastgele dize jeneratör geliştirdim ama umuyorum oldukça davranışlar değil. Amacım bu iki kere iki dört farklı karakter rasgele dizeleri oluşturmak mümkün olacak. Ancak, sadece dört karakter rasgele bir dize iki kez oluşturur.

İşte kod ve çıktısı örneği:

private string RandomString(int size)
{
    StringBuilder builder = new StringBuilder();
    Random random = new Random();
    char ch;
    for (int i = 0; i < size; i  )
    {
        ch = Convert.ToChar(Convert.ToInt32(Math.Floor(26 * random.NextDouble()   65)));                 
        builder.Append(ch);
    }

    return builder.ToString();
}

// get 1st random string 
string Rand1 = RandomString(4);

// get 2nd random string 
string Rand2 = RandomString(4);

// create full rand string
string docNum = Rand1   "-"   Rand2;

...ve bu çıkış bu gibi görünüyor UNTE-UNTE ...ama bu gibi görünmelidir UNTE-FWNU

Nasıl iki büyük ölçüde rasgele dizeleri temin edebilirim?

CEVAP
13 Temmuz 2009, PAZARTESİ


Bunu hızlı bir şekilde aradığında aynı değerlere döndürmek için neden olan bir yöntem, Rasgele bir örnek, yapıyoruz. Böyle bir şey yapardım:

private static Random random = new Random((int)DateTime.Now.Ticks);//thanks to McAden
private string RandomString(int size)
    {
        StringBuilder builder = new StringBuilder();
        char ch;
        for (int i = 0; i < size; i  )
        {
            ch = Convert.ToChar(Convert.ToInt32(Math.Floor(26 * random.NextDouble()   65)));                 
            builder.Append(ch);
        }

        return builder.ToString();
    }

// get 1st random string 
string Rand1 = RandomString(4);

// get 2nd random string 
string Rand2 = RandomString(4);

// creat full rand string
string docNum = Rand1   "-"   Rand2;

(Kod Sürümü değiştirilmiş)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Branboy3

    Branboy3

    12 AĞUSTOS 2012
  • HSmasteryoda .

    HSmasteryoda

    22 Ocak 2010
  • xiaoyu85

    xiaoyu85

    20 ŞUBAT 2010