Интересные ответы, но документы говорят по-другому:
Используйте методы
GetNumericValue
для преобразовать объектChar
, который представляет число к числовому типу значения. использованиеParse
иTryParse
для преобразования символ в строке вChar
объект. ИспользуйтеToString
для преобразованияChar
object to aString
object.
char c = '1';
int i = (int)(c-'0');
и можно создать статический метод из него:
static int ToInt(this char c)
{
return (int)(c - '0');
}
Имеет любого, рассмотрел использование int.Parse()
, и int.TryParse()
как это
int bar = int.Parse(foo.ToString());
Еще лучше как это
int bar;
if (!int.TryParse(foo.ToString(), out bar))
{
//Do something to correct the problem
}
Это намного более безопасно и меньше подверженное ошибкам
Это преобразует его в интервал:
char foo = '2';
int bar = foo - '0';
Это работает, потому что каждый символ внутренне представлен числом. Символы '0' к '9' представлены последовательными числами, таким образом найдя различие между символами '0' и '2' результаты в номере 2.