Преобразование строки в короткую - PullRequest
8 голосов
/ 18 июля 2011

Текущий код:

short s;

s = short.Parse(this.txtFields3.Text);

Я прошел отладку и могу подтвердить, что txtField3.Text возвращает фактическое значение из формы.

Также пробовал:

s = short.Parse(this.txtFields3.Text, CultureInfo.InvariantCulture);

и

s = Convert.toInt16(this.textFields3.Text);    

РЕДАКТИРОВАТЬ: значение переменной, которую я пытаюсь вставить в 's' здесь, это "EMS".

Ответы [ 2 ]

7 голосов
/ 18 июля 2011

и значение это то, что подходит к короткому?

Как насчет:

short s;
if (!short.TryParse(this.txtFields3.Text, out s)){
    s = 0;
}
6 голосов
/ 18 июля 2011

«EMS» не является коротким, поэтому код всегда будет неудачным.

Вы уверены, что понимаете, что пытаетесь сделать? Дайте нам то, что вам действительно нужно сделать, а не то, что, как вы думаете, вы хотите сделать, и вам обязательно помогут.

Обновление

Short - это тип данных, представляющий число. Вот почему «EMS» не короткий.

...