2013-09-22 3 views
4

feof()이 발생하고 stat이 표시되면 파일이 커 졌음을 나타내면 fclose()fopen()을 수행하지 않고 추가 된 데이터를 읽을 수 있습니까?성장하는 파일 읽기

+0

[여기] (http://stackoverflow.com/questions/11757304/how-to-read-a-growing-text-file-in-c) 및 [여기] (http://stackoverflow.com/questions/7864769/c-reading-from-a-live-file-file-keep-grown-in-size). –

+0

고마워요 @ Tsukuyo,하지만 첫 번째 링크는 다른 파일 I/O 호출 집합을 사용하는 C++이고, 두 번째는'select()'를 사용할 수 없다고합니다. '어쨌든). – Fixee

답변

6

예. 파일에 clearerr으로 전화하거나 fseek(f, 0, SEEK_CUR)과 같은 탐색 조작을 수행 할 수 있습니다.

+0

'fseek (f, 0, SEEK_CUR)'는'eof' 플래그를 지우시겠습니까? 그것은 나에게 뉴스 다 (그리고 매우 도움이된다!). – Fixee

+0

C99 7.19.9.2 fseek 함수 5 단락 : "새 위치를 결정한 후 fseek 함수를 성공적으로 호출하면 스트림에서 ungetc 함수의 효과가 취소되고 스트림의 파일 끝 표시기가 지워지고 새로운 입장을 수립했다. " –