|
일단 메모리 멥파일이란게.. 파일을 멥핑 시켜서. 메모리 처럼 사용을 한다는 계념인데..
그렇다면...
일단 파일을
HANDLE hFile, hFMap;
int PtrInFile;
hFile = CreateFile("Test.txt",GENERIC_WRITE|GENERIC_READ,0,NULL,
OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
이렇게 생성 하고 이것을 다시
hFMap = CreateFileMapping(hFile,,NULL,PAGE_READWRITE,0,GetFileSize(hFile, NULL),NULL);
이렇게 .. 만든다음 메핑 파일을 사용할려면
PtrInFile = MapViewOfFile(hFMap,FILE_MAP_ALL_ACCESS,0,0,0);
이렇게 만들어서.. PtrInFile 를 사용하면 Test.txt의 내용을 출력 할수는 있는데요.
여기다 추가적으로 더 데이타를 Test.txt에 기록한 다음 다시 출력 할려면 어떻게 해야 하나요?
근데.. 메핑 시킨 파일 Test.txt 에다 그대로 데이타를 넣어도 상관 없을까요? 적은 내용은 상관 없겠지만.
자료양이 무지 많아지면.. 문제가 되지 않을까요?
FileWrite(hFile,Str.c_str(),Str.Length()); 이렇게 자료를 계속 추가 하고...
출력 할땐 PtrInFile 사용해서 출력 해주고...
DrawText(hdc,(char *)PtrInFile,GetFileSize(hFMap,NULL),&rt,DT_EXPANDTABS);
저번에 임프님께서 메모리멥파일로 테스트를 해보셨다는데...
어떤 방법으로 하셨는지.. 궁금 하군요.. 속도도 빠르고.. 크기에도 상관없는..
^^;
|