Q&A

  • 텍스트 파일에서 포인트 이동
텍스트 파일을 ReadLn으로 한줄씩 읽어 가공한 후 WriteLn으로
다른 파일을 생성하는 작업중입니다.

AAAA 11111  2222  3333
BBBB 11111  2222  3333
CCCC 11111  2222  3333<-- 여기
DDDD 11111  2222  3333

위에서 현재 Readln으로 BBBB라인을 읽어 처리중이고
처리중에 다음 라인이 CCC인지 확인할 필요가 있어
Read로 읽으면 현재 포인트가 (<-- 여기 ) 위치에 가 있어서
다시 CCCC라인의 처음으로 (즉 Read를 하기전의 위치로)
이동하고 싶은데 어떻게 해야 할까요?

좋은 말씀 많이 부탁드리고요.
멋진 하루 되십시요...

1  COMMENTS
  • Profile
    박재용 2002.05.09 21:10
    테스트파일을 그대로 읽을때는 한번읽어온다음에 위로 올라가는것은
    불가능 한것으로 알고있습니다..
    차리라 동적으로 스트링 리스트를 생성하신후 스트링리스트에서 읽어오시는것이 더좋은방법일 것입니다..

    아마 이렇게 하시면 될것입니다..

    var
       i      : integer ;
       temp: TStringList;
       ReadLine : String ;
    begin
        temp := TStringList.Create;
        temp.LoadFromFile('Text파일명');

         for i := 0 to temp.Count - 1 do begin
             ReadLine := temp.Strings[i];
             if pos('CCCC', ReadLine ) > 0 then begin
                Dec(i);
             end
             else begin
                // 읽으시면서 작업하실것.. ^^ ;
             end;

         end;

    end;