Показать сообщение отдельно
  #5  
Старый 02.01.2012, 01:15
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию

Тут при чтении строки нужно ее проверять, читать номер нужного поля и далее тоже самое. Только массив трехмерный будет.
Код:
var F: TextFile;
 S,S1: string;
 i,j,n:integer;
Begin
AssignFile(F, FileName);
 Reset(F);
n:=0;
while (not eof(f)) do begin
Readln(F, S);
if copy(S,1,5)='#Pole' then begin
S1:=copy(S,6,maxint);
n:=strtointdef(S1,1);
j:=1;//По X
while (not eof(f)) do begin
 Readln(F, S);//читаем строку
 for i:=1 to 20 do begin  //По Y
 M[n][i][j]:=strtoint(numnum(s));//читаем 20 чисел из строки. Числа из строки удаляются
end;
 inc(j);
end;
end;
end;
Если поля нумеруются попорядку то можно просто inc(n) без
Код:
S1:=copy(S,6,maxint);
n:=strtointdef(S1,1);
Или если есть несколько массивов, то просто при обнаружении #Pole считывать в нужный массив.

Все, у меня лимит инета исчерпался, так что минимум ближайшую неделю буду в оффлайне
Good bye!
Ответить с цитированием