Wie kann ich Daten in C # von String zu Long konvertieren?
Ich habe Daten
String strValue[i] ="1100.25";
jetzt will ich es rein
long l1;
c#
string
type-conversion
long-integer
MayureshP
quelle
quelle
Antworten:
Diese Antwort funktioniert nicht mehr und ich kann mir nichts Besseres einfallen lassen als die anderen hier aufgeführten Antworten (siehe unten). Bitte überprüfen und stimmen Sie sie ab.
Methodensignatur von MSDN:
quelle
Wenn Sie den ganzzahligen Teil dieser Zahl erhalten möchten, müssen Sie ihn zuerst in eine schwebende Zahl konvertieren und dann in long umwandeln.
Sie können
Math
class verwenden, um die Zahl nach Ihren Wünschen aufzurunden oder einfach abzuschneiden ...quelle
FormatException
wenn Sie dies auf dem angegebenen Eingang ausführen.Sie können auch
long.TryParse
und verwendenlong.Parse
.quelle
http://msdn.microsoft.com/en-us/library/system.convert.aspx
l1 = Convert.ToInt64(strValue)
Obwohl das Beispiel, das Sie gegeben haben, keine ganze Zahl ist, bin ich mir nicht sicher, warum Sie es so lange wollen.
quelle
Sie werden es aufgrund des Dezimalpunkts nicht direkt in long konvertieren können. Ich denke, Sie sollten es in dezimal konvertieren und dann in long konvertieren, ungefähr so:
hoffe das hilft!
quelle
long wird intern als System.Int64 dargestellt, eine 64-Bit-Ganzzahl mit Vorzeichen. Der Wert, den Sie "1100.25" angenommen haben, ist tatsächlich dezimal und nicht ganzzahlig, daher kann er nicht in long konvertiert werden.
Sie können verwenden:
um es in einen Dezimalwert umzuwandeln
quelle
Das sollte es tun.
quelle
Sie können dies auch mit
Int64.TryParse
Method tun . Es wird '0' zurückgegeben, wenn es sich um einen Zeichenfolgenwert handelt, der jedoch keinen Fehler generiert hat.quelle
Sie können Ihre eigene Konvertierungsfunktion erstellen:
Es kann weiter verbessert werden:
quelle