언어/C언어
임의의 파일을 동적으로 버퍼에 저장
강품바
2013. 1. 11. 09:15
출처가...어디더라.... 찾으면 올리겠음..
크기가 항상 다른 파일을 불러다가 버퍼에 저장하는 방법
FILE * warcFile;
char * buffer;
long lSize;
warcFile = fopen( argv[1] , "rb" );
if (warcFile==NULL)
{
fputs("File error",stderr);
exit (1);
}
// 파일의 크기를 ISize 에 저장한다.
fseek(warcFile , 0 , SEEK_END);
lSize = ftell (warcFile);
rewind(warcFile);
// 전체 파일의 내용을 받을 수 있을 정도의 크기로 메모리를 할당한다.
buffer = (char*)malloc(sizeof(char)*lSize);
if (buffer == NULL)
{
fputs("Memory error",stderr);
exit (2);
}
// 그 파일의 내용을 버퍼에 저장한다.
result = fread(buffer,1,lSize,warcFile);
if (result != lSize)
{
fputs("Reading error",stderr);
exit(3);
}