Показать сообщение отдельно
  #10  
Старый 06.07.2012, 10:25
Rocat Rocat вне форума
Прохожий
 
Регистрация: 04.07.2012
Адрес: Киров
Сообщения: 6
Версия Delphi: 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от NumLock
для начала: какой макс. размер файла? байты, Кб, Мб, Гб, Тб?
исходный файл латеховский, размер в Мб.вот что получилось у меня, из наброска(читает файл, заносит нужное в ячейку):
Код:
 var Fz: textFile;
    us, kus, st: string;
    k, k1, l, j: integer;
    Flag: boolean;
    curline:word;
begin
  AssignFile(Fz, 'B_z.txt');
  Reset(Fz);
  curline:=0;
  while not Eof(Fz) do
  begin
    flag:=false;
    while (not flag)and(not Eof(Fz)) do
    begin
      readln(Fz, st);
      k:=pos('<zadacha>',st);
      flag := (k<>0);
    end;
    inc(curline);
    Sg_data.RowCount:=Sg_data.RowCount+1;

    while (flag)and(not Eof(Fz)) do
      begin
        readln(Fz, st);
        k:=pos('<zadacha>',st);
        flag := (k<>0);

        Us:='<*uslovie>';
        kUs:='<#'uslovie>;

        k:=Pos(Us, st);
        if k<>0 then
        begin
          readln(Fz, st);
          k1:=Pos(kUs,st);
          while k1=0 do
          begin
            Sg_data.Cells[1, curline] :=Sg_data.Cells[1, curline]+' '+st;
            readln(Fz, st);
            k1:=Pos(kUs,st);
          end;
        end;

        Us:='<uslovie>';
        kUs:='<#uslovie>';
        k:=Pos(Us, st);
        if k<>0 then
        begin
          readln(Fz, st);
          k1:=Pos(kUs,st);
          while k1=0 do
          begin
            Sg_data.Cells[1, curline] :=Sg_data.Cells[1, curline]+' '+st;
            readln(Fz, st);
            k1:=Pos(kUs,st);
          end;
        end;
      end;
  end;
  closefile(fz);
end;
Ответить с цитированием