2013/10

    파일입출력 feof , fseek , fgetc

    파일 암호화를 시키다가 파일 끝을 어떻게 확인할까 찾아보던중 발견한 대안책 처음엔 feof를 사용하였지만 feof 함수는 파일의 끝을 만나면 0 이아닌 수를 리턴하게 되는데 이때 파일의 끝에서 EOF를 만났을 때 0이 아닌 수를 리턴하는 것이 아니라 EOF를 만나고 그 파일 포인터에 또다시 접근하면 그때 NULL값을 리턴하여 0이 아닌 수를 리턴시켜 주는 것이었다. 그러므로 문제점이 있어서 발견한 방법으로 파일의 끝을 확인하기 위해 먼저 fgetc(STATE_FILE)!=-1 이런식으로 파일포인터에서 파일을 불러 올수 있는지 없는지를 화일문에서 확인시켜준 다음 fseek(STATE_FILE , -1 , SEEK_CUR) 함수를 사용해 다시 함수를 앞으로 땡겨줌

    파일 입출력 API 함수 모음

    #include #include LARGE_INTEGER lint; int main() { HANDLE hFile = CreateFile("d:\\troy.mp4", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if(hFile != NULL && hFile != INVALID_HANDLE_VALUE) { LONGLONG llFileSize = 0L; lint.HighPart = 0, lint.LowPart = 0; GetFileSizeEx(hFile, &lint); CloseHandle(hFile); llFileSize = lint.HighPart; llFileSize