Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Конвертация вещественных типов


Автор: zodiac 2.11.2009, 22:54
Как конвертировать тип double в тип string (и наоборот). Можно в типы, отличные от string или integer (напр., real). Я хочу сделать программно формируемый отчет для БД, исп. для этого Rave. И мне надо, чтобы я сам мог настроить размещение информации на канве отчета из под собственной проги, а не перекомпилируя все заново! А в Rave только одна единица измерения - double. Сколько не рылся в официальном хелпе - не нашел.
Помогите, пожалуйста!

Автор: Данкинг 2.11.2009, 23:05
А чём проблема?
Код

procedure TForm1.FormCreate(Sender: TObject);
var a:double;
b:string;
begin
a:=1.5;
b:=floattostr(a);
showmessage(b);
end;

Автор: Beltar 2.11.2009, 23:26
А я очень люблю FloatToStrF(F,ffGeneral,5,2); Красивее получается. smile

А еще есть уберфункция под названием format. Это как printf в Ц++, только лучше (Лучше потому что для Delphi smile ).

Автор: Hexel 3.11.2009, 12:46
а что сие значит, Rave и для чего оно? как он взаимодействеут с твоей прогой? не встречал такого. и вообще вопрос странно поставлен. наверное, ты и так знаешь, что такое floattostr и format? да и к тому же, чем плохо в своей проге использовать тип double?

Автор: Beltar 3.11.2009, 13:38
Rave это пакет для построения отчетов, который в Delphi 7 д/б заменить QuickReport (в семерке он есть, но по умолчанию не ставится на палитру компонентов и немного резаный). Ни в 7-ой, ни в 2006-ой Delphi я так и не смог его заюзать, во-первых <deleted by moderator> AV выдавал, во-вторых он почему-то читал только первый столбец из таблицы, возможно, ему необходима нормальная русификация. А может просто я идиот.

Автор: Hexel 3.11.2009, 13:47
блин, так оччот никто не запрещает генерить в ричэдит или даже HTML из кода

Автор: Данкинг 3.11.2009, 14:35
Цитата(Hexel @  3.11.2009,  13:47 Найти цитируемый пост)
блин, так оччот никто не запрещает генерить в ричэдит или даже HTML из кода 

Зачем, если для этого есть специальные компоненты? smile

Автор: Hexel 3.11.2009, 20:41
не применял эти компоненты, грешен я батюшка) но ведь не сложно узнать пару-тройку HTML тегов и по готовому шаблону сворганить оччот с любым оформлением. обычный текстовый формат файла. и уже облегчает жизнь проге.
конечно это мое имхо, и еще смотря какая задача

Автор: Данкинг 3.11.2009, 20:58
Цитата(Hexel @  3.11.2009,  20:41 Найти цитируемый пост)
но ведь не сложно узнать пару-тройку HTML тегов и по готовому шаблону сворганить оччот с любым оформлением.

Интересно, и каким образом выводить в HTML, к примеру, список фамилий из таблицы?  smile

Добавлено через 1 минуту и 21 секунду
Цитата(Hexel @  3.11.2009,  20:41 Найти цитируемый пост)
и уже облегчает жизнь проге.

Не знаю насчёт проги, но программисту сиё жизни точно не облегчит. smile 

Автор: zodiac 3.11.2009, 23:20
Спасибо!
Как то не догадался попробовать float type, который использовал только для типа extended.

Автор: Hexel 4.11.2009, 00:48
Цитата(Данкинг @  3.11.2009,  20:58 Найти цитируемый пост)
Интересно, и каким образом выводить в HTML, к примеру, список фамилий из таблицы?

ну как это как
Код

begin
  assign(f, '123.htm');
  rewrite(f);
  writeln(f, '<HTML><BODY>');
  Writeln(f, '<TABLE>');
  Dataset.First;
  while not Dataset.Eof do
  begin
    writeln(f, '<TR>');
    Write(f, '<TD>');
    write(f, inttostr(Dataset.RecNo));
    Write(f, '</TD><TD>');
    writeln(f, Dataset.FieldByName('Familiya').AsString);
    Writeln(f, '</TD>');
    Writeln(f, '</TR>');
    Dataset.Next;
  end;
  Writeln(f, '</TABLE>');
  Writeln(f, '</BODY>');
  Writeln(f, '</HTML>');
  closefile(f);
end.

плюс все остальные прелести языка HTML. хотя правда, выглядит громоздко. короч дело вкуса, но я бы делал именно так для оччотов, которые нужно сохранять и кому-то передавать

Добавлено через 4 минуты и 54 секунды
хм) прямо php какое-то получается. а можно ли компилить проги на нескольких языках сразу?  smile типа как например SQL запросы в коде Delphi? (хоть они и не компиляться)  smile 

Автор: Beltar 4.11.2009, 00:58
Excel решает, вот уж где абслютная переносимость, но желательно 2003+. Кроме того Report must be FAST.

Автор: Данкинг 4.11.2009, 00:59
Цитата(Hexel @  4.11.2009,  00:48 Найти цитируемый пост)
ну как это как

Ну, конечно, и в XLS можно аналогично делать. smile 

Автор: Hexel 5.11.2009, 00:25
да, только это предполагает либо ПИВО либо еще компоненты. а так, все ручками  smile да ладно, забейте) не нравится идея, так не нравиться)

ЗЫ: ПИВО - присоединенные и внедренные объекты

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)