Есть текстовый документ, в котором записаны в столбик такое(пример): 11123 абрис ,11124 абсент ,11125 абсида ,11126 абсурд ,11131 абулия ,11132 абхаз . И таких строк очень много, почти 6000. Индексы их начинаются от 1000 до 6666. Я получаю все эти строки таким образом
string[] lines = File.ReadAllLines(@"F:\VS Projects\Со звёздочкой\diceware.txt");
Потом я формирую массив типа int, состоящий из 5 рандомных элементов от 1 до 6. Суть в том, что по этим рандомным числам я должен найти слово по этому индексу и вывести його. Вот как пытаюсь это сделать
int[] arr1 = new int[5]; //Массив с рандомными значениями, представим, что значения уже там есть.
for ( int i = 0; i < lines.Length; i++)
{
char[] textByCharacter = lines[i].ToCharArray(); //Строку перевожу в массив символов.
int yes = object1.Sravnenie(arr1, textByCharacter); //Метод, в котором я пытаюсь сравнить
if ( yes == 5)
{
textBox.Text = lines[i];
break;
}
}
Сам метод сравнения:
public int Sravnenie(int[] numbers, char[] ch)
{
int yes = 0;
int[] transfer = new int[5];
for (int i = 0; i < 5; i++) //Беру 5, так как первые 5 символом это индекс слова
{
transfer[i] = Convert.ToInt32(ch[i]);
}
for (int i = 0; i < 5; i++)
{
if (numbers[i] == transfer[i])
{
yes++;
}
}
return yes;
}
Но в итоге, мне ничего не выводит. Как решить? Заранее спасибо!
int[] numbers = ... // к примеру это ваши 5 чисел
string[] lines = File.ReadAllLines(@"F:\VS Projects\Со звёздочкой\diceware.txt");
// разбивка на пары ключ-значение
Dictionary<int, string> words = lines.ToDictionary(x => int.Parse(x.Split(' ')[0]), y => y.Split(' ')[1]);
// составление числа из цифр, не супер решение, но так тоже можно
int index = int.Parse(new string(numbers.Select(x => x.ToString()[0]).ToArray());
if (words.TryGetValue(index, out string word))
{
MessageBox.Show(word, "Найдено");
}
else
{
MessageBox.Show("Не найдено");
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Существует словарь частоты встречаемости подстрок в предложении, где ключ - это подстрока, а значение - сколько раз эта подстрока встречается...
Столкнулся с проблемой, в одном классе когда заполняю список и вывожу его мне показует что в списке есть элементыНо когда я хочу узнать количество...
У меня есть сайт с авторизациейИ когда пользователь вводит верный пароль мне нужно сохранять некоторую информацию о нём в виде объекта User
Есть BackgroundWorker который выполняет некий кодПосле окончания работы, он должен написать переменную в label