Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];

Вниз

Разделитель в числах real   Найти похожие ветки 

 
GEN++ ©   (2006-04-25 23:09) [0]

Как программно узнать: какой символ в системе используется
в качестве разделителя целой и дробной части "." или ","
для вывод в виде строки текста чисел в формате
"с плавающей точкой"


 
Lamer@fools.ua ©   (2006-04-26 00:46) [1]

GetLocaleInfo() + LOCALE_SDECIMAL


 
AbrosimovA ©   (2006-04-26 08:29) [2]

Пишешь DecimalSeparator:=".", например, в FormCreate и проблем с точкой не будет, даже если в системе в качестве разделителя установлена запятая.


 
Чапаев ©   (2006-04-26 09:30) [3]


> проблем с точкой не будет, даже если в системе в качестве
> разделителя установлена запятая

Ага, а если пользователь привык, что целую и дробную часть разделяет запятая и её-родимую и жмёт? Станешь объяснять, что кульные хацкеры используют для разделения целой и дробной частей исключительно точку?


 
Lamer@fools.ua ©   (2006-04-26 09:36) [4]

>Пишешь DecimalSeparator:=".", например, в FormCreate и проблем с точкой не будет

Этого мало. Во-первых, ещё надо:
Application.UpdateFormatSettings := False;
А во-вторых, см. [3].


 
zaqwsx   (2006-04-26 14:15) [5]


> Ага, а если пользователь привык, что целую и дробную часть
> разделяет запятая и её-родимую и жмёт? Станешь объяснять,
>  что кульные хацкеры используют для разделения целой и дробной
> частей исключительно точку?


при нажатии запятой программно ставить точку.


 
GEN++ ©   (2006-04-27 08:58) [6]

Спасиюо всем. Все получилось

Моя пограмма генерит файл фрмата *.csv который далее
читает XL. В файле создаются числа целые и с плавющей
точкой.


 
GanibalLector ©   (2006-04-28 00:31) [7]

Вообще-то, не обязательно ее принудительно ставить. Ведь можно и просто считать :

 case Byte(DecimalSeparator) of
  44: Caption:="Preved" ;
  46: Caption:="Medved";
  else Caption:="Fignya";
 end;


 
antonn ©   (2006-04-28 10:04) [8]

function GetNormalize_text(s:string):string;
var i:integer; _b:boolean;
begin
_b:=false;
for i:=length(s) downto 1 do begin
if not(s[i] in ["0".."9"]) then
if (s[i] in [",","."]) then begin
  if _b then delete(s,i,1) else begin
   _b:=true;
    s[i]:=DecimalSeparator;
  end;
end else delete(s,i,1);
end;
if s="" then s:="0";
result:=s;
end;


нормализует текст, удаляет буквы и лишние знаки препинания:)


 
biejo ©   (2006-05-08 01:23) [9]

Пример. Просто, надежно.
пустая форма, одна кнопка.
...

procedure TForm1.Button1Click(Sender : TObject);
Begin
 Button1.Caption:=copy(floattostr(1.1),2,1);
End;


....
нажми кнопку - получишь результат


 
Германн ©   (2006-05-08 02:43) [10]


> GanibalLector ©   (28.04.06 00:31) [7]
>
> Вообще-то, не обязательно ее принудительно ставить. Ведь
> можно и просто считать :


Имхо, в пользовательской программе как правило, её и нужно только читать!



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

Форум: "WinAPI";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 3.353 c
15-1154963169
GeLLeR
2006-08-07 19:06
2006.09.03
Для тех, кто играл в NFS Most Wanted


1-1153755637
Alex Bakulin
2006-07-24 19:40
2006.09.03
Splash Screen с прогрессбаром


1-1153808221
Zilog_
2006-07-25 10:17
2006.09.03
Как правильно перевести с С на Делфи?


2-1155366764
Chort
2006-08-12 11:12
2006.09.03
запуск программы


15-1155408021
Firefly
2006-08-12 22:40
2006.09.03
Дипломная работа





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский