Random rnd = new Random();
int count = rnd.Next(10, 21);
string str = string.Empty;
int r;
char[] chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".ToCharArray();
for (int i = 0; i < count; i++) {
r = rnd.Next(chars.Length);
str += chars[r];
}
return str;
Random rnd = new Random();
int r = rnd.Next(10, 21);
string str = Macros.TextProcessing.RandomText(r, "dc", "");
return str;
Снимаем галку "не возвращать значение" или как-то так она называет, сохраняем в переменную и оттуда уже в список или файлкак сделать чтобы пароли сохранялись в список или в файл при помощи C#
как сделать чтобы пароли сохранялись в список или в файл при помощи C#
Random rnd = new Random();
int count = rnd.Next(10, 21);
string str = string.Empty;
int r;
char[] chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".ToCharArray();
for (int i = 0; i < count; i++) {
r = rnd.Next(chars.Length);
str += chars[r];
}
lock (SyncObjects.ListSyncer) project.Lists["Pass"].Add(str); // добавить строку в список Pass
File.AppendAllText(project.Directory + @"\Pass.txt", str + Environment.NewLine); // добавить строку в файл Pass.txt (если файл не существует, то он создасться)
return str;
Благодарю!!C#:Random rnd = new Random(); int count = rnd.Next(10, 21); string str = string.Empty; int r; char[] chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".ToCharArray(); for (int i = 0; i < count; i++) { r = rnd.Next(chars.Length); str += chars[r]; } lock (SyncObjects.ListSyncer) project.Lists["Pass"].Add(str); // добавить строку в список Pass File.AppendAllText(project.Directory + @"\Pass.txt", str + Environment.NewLine); // добавить строку в файл Pass.txt (если файл не существует, то он создасться) return str;
Wgraphensahos0=
Xclimfoodsmylic7@
Clvilovotjeo0=
Achiptisigzo4/
Подскажите код, чтобы обязательно бралась хотя бы раз заглавная буква, строчная, цифра и спецсимвол. Приведенным выше кодом берутся рандомно, но может получаться, что цифр, например, нет.Зенновским Методом RandomText MethodC#:Random rnd = new Random(); int count = rnd.Next(10, 21); string str = string.Empty; int r; char[] chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".ToCharArray(); for (int i = 0; i < count; i++) { r = rnd.Next(chars.Length); str += chars[r]; } return str;
C#:Random rnd = new Random(); int r = rnd.Next(10, 21); string str = Macros.TextProcessing.RandomText(r, "dc", ""); return str;
// Создаем объект для генерации случайных чисел
Random random = new Random();
// Генерация symbol
string symbols = new string(Enumerable.Range(0, 3).Select(i => "!%&@#$*"[random.Next("!%&@#$*".Length)]).ToArray());
// Генерация word small
var words = new string(Enumerable.Range(0, 2).Select(i => "abcdefghkmnoprstuvxyz"[random.Next("abcdefghkmnoprstuvxyz".Length)]).ToArray());
// Генерация word big
var wordb = new string(Enumerable.Range(0, 2).Select(i => "ABCDEFGHKLMNOPRSTUVXYZ"[random.Next("ABCDEFGHKLMNOPRSTUVXYZ".Length)]).ToArray());
// Генерация num
var num = random.Next(100, 999).ToString();
// Соединение и перемешивание
var password = string.Concat(words, wordb, symbols, num).OrderBy(x => random.Next()).ToArray();
return new string(password);
то что надо но есть еще 1 момент мне надо не 1 пароль а сразу много еще бы эту функцию и вообще было бы крутоГенерация пароля по современным стандартам когда тебуют маленькую и большую букву и символ и цифру
Пример:
2&g@8kYE#3
*%2RgT7r6$
9fG84*!K@y
п.с. количество каждых символов настраивается отдельно, пример Range(0, 3)C#:// Создаем объект для генерации случайных чисел Random random = new Random(); // Генерация symbol string symbols = new string(Enumerable.Range(0, 3).Select(i => "!%&@#$*"[random.Next("!%&@#$*".Length)]).ToArray()); // Генерация word small var words = new string(Enumerable.Range(0, 2).Select(i => "abcdefghkmnoprstuvxyz"[random.Next("abcdefghkmnoprstuvxyz".Length)]).ToArray()); // Генерация word big var wordb = new string(Enumerable.Range(0, 2).Select(i => "ABCDEFGHKLMNOPRSTUVXYZ"[random.Next("ABCDEFGHKLMNOPRSTUVXYZ".Length)]).ToArray()); // Генерация num var num = random.Next(100, 999).ToString(); // Соединение и перемешивание var password = string.Concat(words, wordb, symbols, num).OrderBy(x => random.Next()).ToArray(); return new string(password);
int size = 5; // длина пароля
string alphabet = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789";
int howMany = 5000000; // количество сгенерированных паролей
List<string> list = new List<string>();
for(int i = 0; i < howMany; i++)
list.Add(TextProcessing.RandomText(size, "s", alphabet));
list = list.Distinct().ToList(); // удалить дубли
project.SendInfoToLog($"Удалено дублей: {howMany - list.Count}\nВсего: {list.Count}", false);
project.Lists["Варианты"].AddRange(list); // имя списка в PM "Варианты"
вот в этом варианте я могу указывать длину но не могу указывать сколько раз использовать цифрыГенерация пароля по современным стандартам когда тебуют маленькую и большую букву и символ и цифру
Пример:
2&g@8kYE#3
*%2RgT7r6$
9fG84*!K@y
п.с. количество каждых символов настраивается отдельно, пример Range(0, 3)C#:// Создаем объект для генерации случайных чисел Random random = new Random(); // Генерация symbol string symbols = new string(Enumerable.Range(0, 3).Select(i => "!%&@#$*"[random.Next("!%&@#$*".Length)]).ToArray()); // Генерация word small var words = new string(Enumerable.Range(0, 2).Select(i => "abcdefghkmnoprstuvxyz"[random.Next("abcdefghkmnoprstuvxyz".Length)]).ToArray()); // Генерация word big var wordb = new string(Enumerable.Range(0, 2).Select(i => "ABCDEFGHKLMNOPRSTUVXYZ"[random.Next("ABCDEFGHKLMNOPRSTUVXYZ".Length)]).ToArray()); // Генерация num var num = random.Next(100, 999).ToString(); // Соединение и перемешивание var password = string.Concat(words, wordb, symbols, num).OrderBy(x => random.Next()).ToArray(); return new string(password);
// Генерация num - 3 цифры
var num = random.Next(100, 999).ToString();
// Генерация num на 5 цифр
var num = random.Next(10000, 99999).ToString();
// Генерация num на 1-10 цифр
var num = random.Next(1, 9999999999).ToString();
это я понял братка . но я в с# прям вообще сиди я сам откроюСколько раз указывается диапазоном, пример:
C#:// Генерация num - 3 цифры var num = random.Next(100, 999).ToString(); // Генерация num на 5 цифр var num = random.Next(10000, 99999).ToString(); // Генерация num на 1-10 цифр var num = random.Next(1, 9999999999).ToString();
Сколько раз указывается диапазоном, пример:
C#:// Генерация num - 3 цифры var num = random.Next(100, 999).ToString(); // Генерация num на 5 цифр var num = random.Next(10000, 99999).ToString(); // Генерация num на 1-10 цифр var num = random.Next(1, 9999999999).ToString();
int size = 5; // длина пароля
string alphabet = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789";
int howMany = 5000000; // количество сгенерированных паролей
List<string> list = new List<string>();
for(int i = 0; i < howMany; i++)
list.Add(TextProcessing.RandomText(size, "s", alphabet));
list = list.Distinct().ToList(); // удалить дубли
project.SendInfoToLog($"Удалено дублей: {howMany - list.Count}\nВсего: {list.Count}", false);
project.Lists["Варианты"].AddRange(list); // имя списка в PM "Варианты"