Devo convertire il contenuto di una casella di testo (che è la valuta) in un tipo di dati float. Devo convertire in singolo?Conversione di una stringa in un tipo di dati float
txtPurchItemCorrectPrice.Text.Trim();
Devo convertire il contenuto di una casella di testo (che è la valuta) in un tipo di dati float. Devo convertire in singolo?Conversione di una stringa in un tipo di dati float
txtPurchItemCorrectPrice.Text.Trim();
Se si ha a che fare con la valuta, allora utilizzerei lo double
come minimo, se non lo è decimal
. Detto questo si vuole:
double value = double.Parse(txtPurchItemCorrectPrice.Text.Trim());
Se non siete sicuri se sarà un numero o no:
double value;
bool isOK = double.TryParse(txtPurchItemCorrectPrice.Text.Trim(), out value);
Intendi il tipo C# float
?
float f = float.Parse(text);
Oppure ...
float value;
if (float.TryParse(text, out value))
{
// Yay!
}
else
{
// Boo! Parse failed...
}
Si noti che il codice di cui sopra utilizzerà la cultura corrente. Potresti voler specificare una cultura diversa, ad es.
...
if (float.TryParse(text, out value, NumberStyles.Float,
CultureInfo.InvariantCulture))
...
EDIT: Se questo è in realtà una colonna galleggiante in un database, si può desidera utilizzare double
invece.
Nota che le informazioni sulla valuta dovrebbero di solito non essere memorizzate nell'uso di float/double; deve essere memorizzato utilizzando il tipo decimale, ad es. decimal
(C#) e NUMBER
(SQL).
beh, questo è il mio test nel lato asp txtPurchItemCorrectPrice.Text.Trim(); e il parametro db si aspetta un tipo di dati float. – user279521
@ user279521: Quindi questo è "float" nel database? Se è così, potresti volere "double2 sul lato C# –
Vorrei poter cambiare il tipo di dati DB in numero ... farebbe un atto di congresso Grazie per le informazioni – user279521
float.TryParse(…)
Ciò evita di generare un'eccezione su input non validi.
Dim x As Double = Convert.ToDouble (txtPurchItemCorrectPrice.Text.Trim())
Sarà sempre un numero, poiché è un campo valuta; – user279521
@ user279521 - se è possibile garantire al 100% che quindi andare con 'Parse' piuttosto che' TryParse'. – ChrisF