Topic: Вопрос по DecimalSeparator
Дмитрий, подскажите, пожалуйста, как работает DecimalSeparator?
Что-то я не пойму.
В Delphi она работает так:
var
amount : Currency;
begin
amount := 12.34; // 12 долларов 34 центов
// Показ с заданным по умолчанию символом десятичной точки
ShowMessage('Amount = '+FloatToStrF(amount, ffCurrency, 10, 2));
// Показ с новым символом десятичной точки
DecimalSeparator := '|';
ShowMessage('Amount = '+FloatToStrF(amount, ffCurrency, 10, 2));
end;
Amount = $12.34
Amount = $12|34
А в Вашей программе при попытке сделать так
DecimalSeparator := '|';
появляется ошибка, что левая часть не соотвествует правой.
Вообще, я хочу сделать проверку дробного числа, и если в нем используется неправильный разделитель, то заменить его на правильный.
Делаю так:
If not ValidFloat(Amount) Then
begin
DecimalSeparator := ',';
end;
P.S.
И ещё не могу понять, можно ли сделать округление до определенного знака после запятой?
Т.е. до 2 знаков после запятой или одного. В данный момент у меня получается только до целого округлять.