Konvertieren Sie char in int in C #

Konvertieren Sie char in int in C #

Dadurch wird es in ein int konvertiert:

char foo = '2';
int bar = foo - '0';

Das funktioniert, weil jedes Zeichen intern durch eine Zahl dargestellt wird. Die Zeichen '0' bis '9' werden durch fortlaufende Nummern dargestellt, also ergibt die Differenz zwischen den Zeichen '0' und '2' die Zahl 2.


Interessante Antworten, aber die Dokumentation sagt etwas anderes:

http://msdn.microsoft.com/en-us/library/system.char.aspx


Hat jemand darüber nachgedacht, int.Parse() zu verwenden und int.TryParse() so

int bar = int.Parse(foo.ToString());

Noch besser so

int bar;
if (!int.TryParse(foo.ToString(), out bar))
{
    //Do something to correct the problem
}

Es ist viel sicherer und weniger fehleranfällig