2007/09/06(Thu) 14:18:51 編集(投稿者)
■No7473 (tobi さん) に返信
> まず、C#ではユニコードになるので、byte配列で'0123456789abcdefg...を記述する方法が分かりません。
> そして、1文字ずつユニコードに変換させてstringに変えたいのですが、
byte で処理するのでは無く、char で処理することを検討してみてください。
とりあえず、20人分のパスワード生成(8文字)を。
static void Main()
{
// StringBuilder szPassword = new StringBuilder(new String(' ', 8));
char[] szPassword = new char[8];
string cData = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
int limit = cData.Length;
Random random = new Random();
for (int test = 0; test < 20; test++)
{
for (int i = 0; i < 8; i++)
{
int c = random.Next(limit);
szPassword[i] = cData[c];
}
//Console.WriteLine(szPassword.ToString());
Console.WriteLine(new String(szPassword));
}
Console.ReadLine();
}