Frage

Ich möchte einen String, der 5 Nullen („00000“) enthält, in einen Int umwandeln, damit er inkrementiert werden kann.Immer wenn ich die Zeichenfolge mit Convert.ToInt32() in eine Ganzzahl umwandle, wird der Wert zu 0.Wie kann ich sicherstellen, dass die Ganzzahl nach der Konvertierung eine feste Länge behält?

Ich möchte in der Lage sein, den Wert von „00000“ auf „00001“ usw. zu erhöhen, damit der Wert mit so vielen Ziffern in einer Datenbank anstelle von 0 oder 1 angezeigt wird.

Wenn Sie die Frage ablehnen, können Sie zumindest eine Rückmeldung dazu hinterlassen, warum Sie es getan haben ...

War es hilfreich?

Lösung

Eine ganze Zahl ist eine ganze Zahl.Nichts mehr.

Also die int Sie haben den Wert Null, es gibt keine Möglichkeit, „Längen“-Metadaten oder ähnliches hinzuzufügen.

Ich schätze, was Sie eigentlich wollen, ist, dass es irgendwann eine geben wird string wieder.Du willst das string um Ihre Nummer darzustellen, jedoch mit 5 Zeichen und führenden Nullen.

Dies erreichen Sie mit:

string s = i.ToString("00000")

BEARBEITEN

Sie sagen, Sie möchten, dass die Zahlen in Ihrer Datenbank so angezeigt werden.Frag dich selbst:

Muss das in der Datenbank wirklich so sein oder reicht es aus, die Zahlen gleich beim Auslesen aus der Datenbank zu formatieren?

Formatieren Sie sie abhängig davon (wie oben gezeigt), entweder beim Schreiben in die Datenbank oder beim Lesen aus der Datenbank.Im ersteren Fall wird natürlich mehr Speicherplatz benötigt und Sie können SQL oder ähnliches nicht wirklich zum Ausführen arithmetischer Operationen verwenden!

Andere Tipps

Eine Ganzzahl hat keine Länge, es ist rein ein numerischer Wert.Wenn Sie die Länge halten möchten, müssen Sie die Informationen über die Länge woanders speichern.

Sie können den Wert in ein Objekt einwickeln, das die Länge in einer Eigenschaft hält.Beispiel:

generasacodicetagpre.

uage:

generasacodicetagpre.

Wie Olydis oben sagt, an int ist nur eine Zahl.Es wird nicht spezifiziert Anzeigeformat.Ich empfehle auch nicht, es mit Nullen aufgefüllt in einer Datenbank zu speichern.Es ist ein int, speichern Sie es als int.

Zur Anzeige, in der App, ein Bericht, was auch immer, dann die Nullen auffüllen.

string s = i.ToString("00000");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top