826 Stimmen

Wie kann ich String in Int konvertieren?

Ich habe eine TextBoxD1.Text und ich möchte sie in eine int um sie in einer Datenbank zu speichern.

Wie kann ich das tun?

2 Stimmen

Gibt es einen bestimmten Nachteil bei der Verwendung von Convert.ToInt32()

9voto

Edwin b Punkte 81

Umwandlung von string a int getan werden kann: int , Int32 , Int64 und andere Datentypen, die Ganzzahl-Datentypen in .NET widerspiegeln

Das nachstehende Beispiel zeigt diese Umwandlung:

Dies zeigt (zur Information) ein Datenadapterelement, das mit einem int-Wert initialisiert wurde. Dasselbe kann direkt wie folgt gemacht werden,

int xxiiqVal = Int32.Parse(strNabcd);

Ex.

string strNii = "";
UsrDataAdapter.SelectCommand.Parameters["@Nii"].Value = Int32.Parse(strNii );

Link zu dieser Demo .

9voto

Miroslav Holec Punkte 3026

Sie können Ihre eigene Erweiterungsmethode schreiben

public static class IntegerExtensions
{
    public static int ParseInt(this string value, int defaultValue = 0)
    {
        int parsedValue;
        if (int.TryParse(value, out parsedValue))
        {
            return parsedValue;
        }

        return defaultValue;
    }

    public static int? ParseNullableInt(this string value)
    {
        if (string.IsNullOrEmpty(value))
        {
            return null;
        }

        return value.ParseInt();
    }
}

Und wo auch immer im Code rufen Sie einfach

int myNumber = someString.ParseInt(); // Returns value or 0
int age = someString.ParseInt(18); // With default value 18
int? userId = someString.ParseNullableInt(); // Returns value or null

In diesem konkreten Fall

int yourValue = TextBoxD1.Text.ParseInt();

1 Stimmen

Müsste die Klasse nicht heißen StringExtensions anstelle von IntegerExtensions da diese Erweiterungsmethoden auf eine string und nicht auf eine int ?

8voto

JeffH Punkte 9824

Wie in der TryParse-Dokumentation TryParse() gibt einen booleschen Wert zurück, der angibt, dass eine gültige Zahl gefunden wurde:

bool success = Int32.TryParse(TextBoxD1.Text, out val);

if (success)
{
    // Put val in database
}
else
{
    // Handle the case that the string doesn't contain a valid number
}

7voto

Serdin Çelik Punkte 85

Sie können String in int konvertieren viele verschiedene Typ-Methoden in C #

Die erste wird meistens verwendet:

string test = "123";
int x = Convert.ToInt16(test);

Wenn der Wert int höher ist, sollten Sie den Typ int32 verwenden.

Die zweite:

int x = int.Parse(text);

Wenn Sie eine Fehlerprüfung durchführen möchten, können Sie die Methode TryParse verwenden. Im Folgenden füge ich nullable Typ;

int i=0;
Int32.TryParse(text, out i) ? i : (int?)null);

Viel Spaß mit Ihren Codes....

5voto

deepu Punkte 1867
int i = Convert.ToInt32(TextBoxD1.Text);

0 Stimmen

Eine Erklärung wäre angebracht. Zum Beispiel, wie unterscheidet es sich von Babak Naffas' Antwort ?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X