Вниз
Скачать: CL | DM;

String-> float с DecimalSeparator   Найти похожие ветки 

← →
yozch_   (2003-07-23 21:50) [0]

Коллеги, как просто пребразовать пример типа "3,55" (string) в currency (float) c текущим DecimalSeparator для дальнейших арифметических действий?


← →
default ©   (2003-07-23 21:53) [1]

StrToFloat


← →
yozch_   (2003-07-23 21:56) [2]

эта штука почему-то не работает в чисто английских виндах :-(, этого-то я понять и не могу, причем в строке отдельной фукцией DecimalSeparator текущий подставляю!


← →
panov ©   (2003-07-23 22:10) [3]

Посмотри представление денежных единиц и чисел в аналоге "Языки и стандарты" из панели управления. Думаю, что в этом дело.


← →
yozch_   (2003-07-23 22:18) [4]

В том собственно и гимор, что пользователь создает "базу данных" и распространняет среди клиентов с оболочкой, должно работать везде! под себя не подстроишь. Сейчас решил вопрос тем, что сразу меняю сепаратор при загрузке данных на текуший в системе, - все пошло, эти данные обрабатываются. НО, раньше я загружал данные как есть, например с точками, а при расчетах, менял их на запятую, и при этом глючило! Шило на мыло, а результат разный!
Вроде устаивает что сейчас получилось, н вопрос остался.
Всем спасибо.


← →
Anatoly Podgoretsky ©   (2003-07-23 23:25) [5]

Неправильно, не надо под себя подстраивать, надо подстраиваться под систему, то есть под пользователя. Правильно написаная программ не требует изменять десятичный разделитель, она просто работает стем, который выбрал пользователь.


← →
Bel ©   (2003-07-24 10:45) [6]

Может, написать свою функцию преобразования строки в число, где использовать текущий разделитель. Что-то типа:

function MyStrToFloat (Val: String): Extended;
var
p: Integer;
begin
p := pos(",", Val);
if p > 0 then Val[p] := DecimalSeparator;
p := pos(".", Val);
if p > 0 then Val[p] := DecimalSeparator;
Result := StrToFloat(Val);
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
1-20529
Vintik
2003-07-26 15:34
2003.08.07
Надо сделать чтоб в определеный момент окно становилось активным


1-20603
stud
2003-07-24 14:52
2003.08.07
обращение к объекту по имени


14-20742
race1
2003-07-20 18:28
2003.08.07
Масяня - RUSPUNK.exe


14-20665
J_S
2003-07-18 20:28
2003.08.07
Сокрытие программы от Task Manager в NT/2000/XP


1-20536
The X
2003-07-26 17:41
2003.08.07
Как узнать количество символов (с пробелами) в TMemo или TDBMemo?




   Наверх