Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

Чтение строк из текстового файла.   Найти похожие ветки 

 
RusPutin   (2004-08-21 02:26) [0]

Есть текстовый файл вида:

1 2
3 4
5 6
7 8

То есть в файле много строк по два числа в каждой (чила могут быть как положительные, так и отрицательные, как целые, так и дробные - короче, real). Также есть StringGrid, состоящий из двух колонок. Требуется считать числа в соответсвующие ячейки грида. Read(...) и Readln(...) считывают все строку целиком. А нужно числа по отдельности. Как быть?

Заранее спасибо.


 
KADAN ©   (2004-08-21 02:35) [1]

1) считать строку, назовем ее S
2) StringGrid.Cells[0,i]:=copy(S,1,pos(S," ")-1);
  StringGrid.Cells[1,i]:=copy(S,pos(S," ")+1, length(S)-pos(S," "));

второй способ
ReadLn(f, a, b)


 
Anatoly Podgoretsky ©   (2004-08-21 10:31) [2]

Не кати бочку на ReadLn, он читает так, как ты ему скажешь.


 
RusPutin   (2004-08-21 11:15) [3]

Вот кусок кода:

while not EOF(F) do
begin

       j:=j+1;
       //меняю строку
       ReadLn(F, SX, SY);
       //считываю значения в переменные
       Form1.StringGrid1.Cells[0,j]:=SX;
       Form1.StringGrid1.Cells[1,j]:=SY;
       //засываю в ячейки
       form1.StringGrid1.RowCount:=form1.StringGrid1.RowCount+1;
       //увеличиваю количество строк
end;


Проблема в том, что вся строка все равно записывается в первую переменную (SX). И соответсвенно числа парами записываются в первый столбец. Так что не какить бочку на ReadLn не могу. :)


 
Sandman25 ©   (2004-08-21 11:18) [4]

Если прочитать надо real, то и переменная SX должна быть типа real


 
Anatoly Podgoretsky ©   (2004-08-21 11:41) [5]

RusPutin   (21.08.04 11:15) [3]
SX, SY видимо у тебя строки?
Так вот строка это то что заканчивается разделителем строки, а ReadLn читает за раз только одну строку!


 
RusPutin   (2004-08-21 14:42) [6]

2All, всем спасибо, проблему решил посредством функции copy.



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

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.056 c
1-1092734634
Aleksandr.
2004-08-17 13:23
2004.09.05
В очередной раз вопрос по окошку регистров ЦПУ.


1-1092905782
snake1977
2004-08-19 12:56
2004.09.05
QuickReport


14-1092428075
Паскальные надписи
2004-08-14 00:14
2004.09.05
Приступ болезни "ОПТИМИЗАЦИЯ" - МОДУЛИ


14-1092505555
TRyaSS
2004-08-14 21:45
2004.09.05
Слияние с минимальным числом сравнений


3-1092217159
Mitrofan
2004-08-11 13:39
2004.09.05
Отчет в виде дерева