Я пытаюсь написать простую программу, которая будет принимать 2 многострочных входа из 2 текстовых полей, поместить их в 2 массива и сравнить их.Сравнение 2 массивов строк C#
Я хочу проверить, является ли запись в массиве 1 (каждая строка текстового поля 1 является отдельной записью в массиве 1) находится в массиве 2 (каждая строка текстового поля 2 является отдельной записью в массиве 2).
затем выводят результаты в текстовое поле.
, например:
массив 1 "один, два, три, четыре, шесть"
Массив 2 "один, три, пять, четыре"
он должен вывести:
one = found
two = not found
three = found
four = found
six = not found
код я до сих пор выглядит следующим образом:
private void button1_Click(object sender, EventArgs e)
{
textBox3.Text = "";
string[] New = textBox1.Text.Split('\n');
string[] Existing = textBox2.Text.Split('\n');
//for each line in textbox1's array
foreach (string str in New)
{
//if the string is present in textbox2's array
if (Existing.Contains(str))
{
textBox3.Text = " ##" + textBox3.Text + str + "found";
}
/if the string is not present in textbox2's array
else
{
textBox3.Text = " ##" +textBox3.Text + str + "not found";
}
}
}
Это не работает правильно, если есть более чем одна строка в любом текстовом поле - я не могу понять, почему .. происходит в тестовых прогонов следующее:
Array 1 - "One"
Array 2 - "One"
Result = One Found
Array 1 - "One"
Array 2 - "One, Two"
Result = One Not Found
Array 1 - "One, Two"
Array 2 - "One, Two"
Result = One found, Two Found
Array 1 - "One, Two, Three"
Array 2 - "One, Two"
Result - One Found, Two Not Found, Three Not Found
Заранее спасибо
W Ты хочешь сказать, что «неправильно работает»? –
Что именно не работает? –
Вы пробовали отлаживать его и видеть, что такое содержимое 'textBox1.Text' и' textBox2.Text'? –