Форум: "Основная";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];
Внизвыравнивание в текстовом файле Найти похожие ветки
← →
appendix © (2004-09-19 13:38) [0]Подскажите как правильно организовать вывод в файл
из StringGrid. Чтоб также ровно колонки получались.
Сейчас получается так:
1636,038 620,343
1636,088 660,333
0,678 0,323
0,029 0,024
кусок процедуры записи в файл:
for i := 0 to StringGrid1.RowCount-1 do
WriteLn(F," " + StringGrid1.Cells[0,i] + " "+
StringGrid1.Cells[1,i] + " "+
StringGrid1.Cells[2,i] + " "+
StringGrid1.Cells[3,i]);
кусок из StringGrid1DrawCell:
s := StringGrid1.Cells[ACol,ARow];
DrawText(StringGrid1.Canvas.Handle,PChar(s),length(s),Rect,DT_Right);
В Stringgrid"е колонки такие какие надо - ровные:
1636,038 620,343
1636,088 660,333
0,678 0,323
0,029 0,024
Вот надо, чтоб также красиво в файл записывалось.
← →
begin...end © (2004-09-19 13:40) [1]Вместо пробелов вставляй символы табуляции.
← →
Anatoly Podgoretsky © (2004-09-19 13:57) [2]StringGrid1.Cells[0,i]:w:d
← →
begin...end © (2004-09-19 14:00) [3]
> [2] Anatoly Podgoretsky © (19.09.04 13:57)
Старый добрый Паскаль сразу вспомнился... :-)))
← →
GuAV © (2004-09-19 18:35) [4]formatом ещё можно.
← →
Anatoly Podgoretsky © (2004-09-19 18:36) [5]begin...end © (19.09.04 14:00) [3]
А чего вспоминаться, как был Паскаль так и остался, не смотря на меркетинговые ухищрения.
← →
appendix © (2004-09-24 19:31) [6]Воспользовался format("%15.10s",[StringGrid1.Cells[1,i]]) +...
Всё получилось как надо.
Спасибо за подсказку.
Но так и не понял что такое
StringGrid1.Cells[0,i]:w:d
как этим пользоваться?
← →
Defunct © (2004-09-24 19:38) [7]appendix © (24.09.04 19:31) [6]
WriteLn(F, StringGrid1.Cells[0,i]:10:15, StringGrid2.Cells[1,i]:10:15);
← →
Anatoly Podgoretsky © (2004-09-24 19:43) [8]Для текста d не требуется, это только для чисел с плавающей запятой.
← →
GuAV © (2004-09-24 19:56) [9]
> Но так и не понял что такое
> StringGrid1.Cells[0,i]:w:d
>
> как этим пользоваться?WriteLn
илиStr
+
F1
← →
appendix © (2004-09-25 19:26) [10]Я пробовал писать
WriteLn(F, StringGrid1.Cells[0,1]:10:15);
но выходила ошибка
illegal type in Write/Writeln Statement
А вот когда я прочитал Str+F1,
то написал
WriteLn(F," ",(StringGrid1.Cells[0,i]):15,
(StringGrid1.Cells[1,i]):15,
(StringGrid1.Cells[2,i]):15);
и всё заработало.
← →
Anatoly Podgoretsky © (2004-09-25 20:04) [11]appendix © (25.09.04 19:26) [10]
Читать надо было две вещи - [8] и справку, в ней все подробно описано.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.10.10;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.044 c