2012-09-20 2 views
1

계속 업데이트되는 텍스트 파일에 기록 된 모든 행을 읽고 싶습니다. 나는 다음과 같은 방법을 시도했지만 이것이 중복 파일을 읽게했다.텍스트 파일의 특정 부분 읽기

  1. 가져 오기 파일 크기
  2. 읽기 파일의 끝 FRM 제로
  3. 반복 이전 단계는

이의 문제가

  • 시작 파일의 끝으로 1 단계에서 파일 크기에서 읽기입니다
  • 내가 파일을 읽는 동안 그 파일에 기록 된 파일을 복제한다는 것입니다. 이것은 파일의 끝까지 읽고 있기 때문입니다. 내가하고 싶은 무엇

    파일 크기를 가져 1 단계

  • 에서 다음

    1. 가져 오기 파일 크기
    2. 읽기 FRM 제로 파일에 크기
    3. 시작 1 단계에서 파일 크기에서 읽기 단계에서 파일 크기에 3
    4. 반복 이전 단계

    이 방법으로 나는 결코 읽은 행을 복제하지 않을 것입니다.

    이것이 가능합니다. 스트림 판독기/파일 판독기에서 파일을 읽으려면 시작 지점과 끝 지점을 지정해야한다고 생각합니다.

  • +1

    가능한 경우 , 프로세스간에 통신하기 위해 휘발성 텍스트 파일을 사용하지 마십시오. – Jodrell

    +0

    불행히도 텍스트 파일은 제 것이 아니며, 단지 그것을 읽고 데이터베이스에 내용을 넣어야합니다. 나는 라인 복제를 피하고 싶다. – anothersanj

    답변

    0
    이 뭔가를 시도 할 수 있습니다

    :

    1. 임시로 파일 이름 바꾸기
    2. 는 원래 이름
    3. 프로세스 임시 파일
    4. 반복
    5. 와 비어있는 새 파일을 만듭니다 이름

    파일이 다른 프로세스에서 항상 잠긴 경우 동일한 프로세스를 변경해보십시오. 파일 크기

  • 프로세스 파일
  • 반복, 다음 패스에 파일 크기 + 1에서 처리를 시작하는

    1. 복사 임시 이름으로 파일을
    2. 를 적어 둡니다
  • 관련 문제