Как преобразовать строку в целое число в WindowsPhone7 - PullRequest
3 голосов
/ 14 марта 2012

Мне нужно преобразовать строку в целое число в Windows Phone 7. Я попробовал следующий код, но мое приложение упало:

int val1 = Convert.ToInt16(str);

Есть ли другой способ сделать это?

Ответы [ 6 ]

9 голосов
/ 14 марта 2012

Почему происходит сбой? Вы получаете сообщение об ошибке? Каково действительное значение 'str' ? Может быть, проблема в этом. Также я бы выбрал ToInt32 (), так как он возвращает int, а ToInt16 () возвращает short. Это не создаст проблем, но выглядит более логично. И наконец, эти методы сделают свою работу:

int val1 = Convert.ToInt32("123");

int val2 = int.Parse("123");

int val3 = 0;
int.TryParse("123", out val3);
2 голосов
/ 14 марта 2012

Вы пробовали

string str = "155";
int retVal;
if(int.TryParse(str, out retVal))
{
   // You can now code with it
}
2 голосов
/ 14 марта 2012

Чтобы преобразовать строку в целое число, используйте


string text = "500";
int num = int.Parse(text);
1 голос
/ 17 марта 2012

Я думаю, int.TryParse - это путь.Таким образом, вы узнаете, был ли анализ успешным или нет, проверив возвращаемое значение.Преимущество заключается в том, что он не выдает никаких исключений, поэтому вам не нужно писать код обработки ошибок, что делает его более простым и менее подверженным ошибкам.Мне лично не нравится код, который выдает много исключений, так как можно легко избежать ошибок при их обработке.

Если вы уверены, что используете это на 32-битной платформе, вы можете попробовать Int32.TryParse(), или, если 64-битная платформа, вы можете использовать Int64.TryParse()

1 голос
/ 14 марта 2012

попробуйте Convert.ToInt32 (str)

Думаю, это поможет:)

1 голос
/ 14 марта 2012

я подумал, что эта ссылка может быть полезной

http://msdn.microsoft.com/en-us/library/bb397679.aspx#Y584

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