List <char> .toString не конвертирует правильно

У меня есть список char, которую я хочу сохранять в string с методом ToString.

Проблема состоит в том, что меня сохраняет любая вещь:

Captura mientras está compilando

Для большей информации, метода, что он делает, состоит в том, чтобы получать string, менявший один TextBox, оцени, если существует какой-то характер, я не сообщаю внутри string, и если он существует, он это снимает (находя характер, создавая список с символами принятого string, перемещая от списка характер, который совпадает с расположенным напротив, который, я не сообщаю, потом возвращая список в string и показывая ее в TextBox).

Почему он сохраняет плохо string?

1
задан 02.01.2018, 10:21
4 ответа

método ToString один método полученный в наследство от класса Object, которые возвращают цепь, которая представляет объект. Назначенный по умолчанию этот método возвращает полное имя типа объекта.

Какие-то типы sobrescriben этот método для того, чтобы у него было различное поведение, но это не случай списков genéricas. Поэтому назвав в método ToString результат - имя типа объекта.

, Если ты хочешь конвертировать string список символов, ты можешь использовать método Concat:

string recortado = string.Concat(recortar);
2
ответ дан 24.11.2019, 03:13
  • 1
    Большое спасибо, я funcionó совершенный. Sé что по возможности не нужно использовать ящик комментариев, чтобы говорить спасибо, но я не нахожу другой способ разъяснять, что тема уже solucionó. – Facundo Yuffrida 07.01.2018, 06:12
  • 2
    Ничего @FacundoYuffrida. Правильная форма состоит в том, чтобы помечать ответ как принятая: es.stackoverflow.com/help/someone-answers – Asier Villanueva 07.01.2018, 12:59

Я думаю, что способ, в котором ты приступаешь к проблеме, не mÃ: s работоспособный. Я ты recomiento, который ты просто санкционировал, если пальчатого характера один número или нет, и в случае, если он это не будет, не добавлять это к perfectosTextbox (в событии KeyPress). Например:

public static void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (!char.IsNumber(e.KeyChar) && e.KeyChar != (char)Keys.Back)
        e.Handled = true;
}

Это har¦, - которого textBox1 только допустил números, чтобы в конце концов это было тем, что ты ищешь.

0
ответ дан 24.11.2019, 03:13
  • 1
    Большое спасибо, но в этом случае я предпочитаю opció n, что comentó Асиер, так как изначально textBox считает нагруженной фразу: " Введите nú в компьютер; морской окунь aquí " и используя string. Concat я гарантирую себя, что, изменив этот первоначальный текст, исчезли все символы не numé богатые. – Facundo Yuffrida 07.01.2018, 06:14
  • 2
    В любом случае, большое спасибо, он искал способ использовать переменную и давно, посмотрим он был равно как в Java – Facundo Yuffrida 07.01.2018, 06:15

ты можешь использовать регулярные выражения следующей формы, чтобы удалять символы numéricos

System.Text.RegularExpressions.Regex.Replace(perfectosTextBox.Text, @"[\d-]", string.Empty, RegexOptions.None);

И чтобы удалять их не numéricos

System.Text.RegularExpressions.Regex.Replace(perfectosTextBox.Text, @"[^0-9]", string.Empty, RegexOptions.None);
0
ответ дан 24.11.2019, 03:13

обрезать. Tostring возвращает тебе буквального типа "System. Collections. Generic. List '1 [System. Char]"

, чтобы конвертировать коллекцию char в string

 recortar =new String(recortar.ToArray())
0
ответ дан 24.11.2019, 03:13