2010-01-25 19 views
21

Voglio essere in grado di convertire un numero di stringa come "1.427.76" in un numero in coldfusion ma la virgola sta fallendo. C'è un modo semplice per farlo oltre a dover rimuovere la virgola?Come convertire una rappresentazione di stringa di un numero in un numero in coldfusion?

<cfset string = "1,427.75"> 

<cfset number = string * 100> 

L'errore si verifica quando si tenta di eseguire operazioni matematiche su di esso. Se la virgola viene rimossa, funziona bene ma sto ottenendo la virgola da un calcolo del database.

risposta

43

So che è possibile utilizzare LSParseNumber:

<cfset string = "1,427.75"> 

<cfset number = LSParseNumber(string) * 100> 
+0

Ha funzionato alla grande, grazie! –

+2

@Scott Chantry se la risposta di derivazione ha funzionato per te, non dimenticare di sceglierla come risposta accettata. :) – mwcz

8

Val() funziona come pure per le conversioni semplici in cui non si interessano locale, ad esempio, Val ('123.45')

+1

L'utilizzo di Val funziona solo quando non c'è una virgola. –

+0

risolto facilmente con string = val (string.replaceAll ('[^ 0-9 \.] +', '')); –

+1

utilizzando val() è circa 2 volte più veloce di lsParseNumber() –

Problemi correlati