PDA

View Full Version : ساختن اعداد و حروق Random



c-sharp_South
پنج شنبه 09 شهریور 1391, 20:24 عصر
سلام دوستان.
میخواستم اگه ممکنه راهنمایی کنین چطوری میتونم با زدن روی یک Button
در Textbox یک سری اعداد راندوم که شامل حروف مشخصی است مثل:
0123456789*-+=qwertyuiopasdfghjklzxcvbnm,.~!$()_
ظاهر بشه ؟ و طول Text رو هم مشخص کرد.
مرسی

c-sharp_South
پنج شنبه 09 شهریور 1391, 20:36 عصر
string GetRandomString(int size)
{
Random r = new Random();
string legalChars = "abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVW XYZ";
string randStr = "";
for (int i = 0; i < size; i++)
randStr += legalChars.Substring(r.Next(0, legalChars.Length), 1);
return randStr;
}


این متد رو پیدا کردم ولی به Button که میدم موقع اجرا ارور میده.
چیزی رو نباید Use کنم مثلا using System.Diagnostics; ؟
ممنون میشم راهنمایی کنین.

harani
پنج شنبه 09 شهریور 1391, 20:56 عصر
خدمت شما :


private void button1_Click(object sender, EventArgs e)//a
{
textBox1.Text = "";//a

Random r = new Random();//b
int rand = r.Next(0, 100);//c
/*میتونی به جای 100 از هر دامنه ی دیگه ای استفاده کنی ولی برای اعداد بزگتر از 400 یا 500 برنامه با تأخیر اجرا میشه */

string itemsAscii = "";//e
for (int i = 0; i <= rand; i++)//f
{
itemsAscii = Convert.ToChar(Convert.ToUInt32(i)).ToString();//h
textBox1.Text += itemsAscii;//j
}
button1.Text = textBox1.Text.Length.ToString();//j
}

c-sharp_South
پنج شنبه 09 شهریور 1391, 21:19 عصر
با تشکر :قلب:
میشه کارکتر ها رو خودم مشخص کنم که به جز کارکتر هایی که میخوام از کارکتر دیگه ای استفاده نکنه؟

harani
پنج شنبه 09 شهریور 1391, 21:48 عصر
آره اونکه کاری نداره یه آرایه بذار که شامل تمامی کاراکترات باشه :

اینم خدمت شما :


private void button1_Click(object sender, EventArgs e)//w
{
Random r = new Random();//h
string[] s = new string[] { "1", "2", "3", "4", "5", "a", "b", "c", "#", "$" /* , other */ };//a

textBox1.Text = "";//b

int random = r.Next(0, s.Length);//c

for (int i = 0; i <= random; i++)//d
{
int rand = r.Next(0, i);//e
textBox1.Text += s[rand];//f
}
button1.Text = textBox1.Text.Length.ToString();//t
}

Farshid007
جمعه 10 شهریور 1391, 11:09 صبح
string GetRandom(int Lentgh)
{
//حروف های مختلف را با , جدا کنید
string Randoms = "1,2,3,4,5,6,7,8,9,,q,w,e,r,t,y,u,i,o,p,l,k,j,h,g,f ,d,s,a,z,x,c,v,b,n,m";
string R = "";
Random rnd = new Random();

for (int i = 0; i < Lentgh; i++)
{
R += Randoms.Split(',')[rnd.Next(0, Randoms.Split(',').Length)];
}
return R;
}

نحوه ی استفاده:
10 رقمی:
textBox1.Text= GetRandom(10);