Funcao - str(money)tofloat |
Top Previous Next |
|
// Funcao excelente para converter string em float ================================================== Exemplo Result ----------------------- ------- Str2float(' 10 ', -1); 10 Str2float('A' , -1); -1 Str2float('R$ 0,11'); 0.11 Str2float(' 1.000,20'); 1000.20 Str2float('1.00'); 0 Str2float('99,99z',13); 13
// Sintaxe ========== function Str2Float(const Valor: string; RetornoFalse: Extended = 0): Extended;
Valor = Valor em formato string para converter para float (aceita ".", " ", "R$"). RetornoFalse = Valor retornado caso a string não pode ser convertida.
// Completo =========== function Str2Float(const Valor: string; RetornoFalse: Extended = 0): Extended; var S: string; begin S := StrTran(Valor, ThousandSeparator, ''); // tira separador de milhar S := StrTran(S , CurrencyString , ''); // tira o "R$" if not TextToFloat( PChar(S), Result, fvExtended ) then Result := RetornoFalse; end;
// Esta tras result para usar em SQL: function Str2FloatAnsi(const Valor: string; RetornoFalse: Extended = 0): string; begin Result := StrTran( FloatToStr(Str2Float(Valor, RetornoFalse)), DecimalSeparator, '.'); // Retorna para o SQL end;
|