'대용량 파일'에 해당되는 글 1건

  1. 2012.11.25 파일크기 측정방법

1. 파일크기 얻어오는 방법

 void main()

{

     FILE *fp;

     fp = fopen("/filepath" , "r" ) ;  

 

     fseek(fp , 0l , SEEK_END );          //파일포인터를 파일의 마지막으로 이동

     printf("%d byte \n" , ftell(fp)) ;   //파일 포인터가 가리키는 오프셋을 알아냄으로써 파일의 크기를 얻어옴

}

위코드로 작성했을때는 ftell함수의 반환형이 32비트인 int형이기때문에 2G가 이상은 오버플로우가 발생하기때문에 파일의 크기를 얻어낼수없다. 따라서 2G이상의 파일크기를 얻고자할때는 _fseek64, _ftell64함수를 이용한다.

 

 FILE *file=fopen(("/filepath" , "r");

_fseeki64(file, 0, SEEK_END);

m_nFileSize=_ftelli64(file);

fclose(file);

 

'Developer > C / C++' 카테고리의 다른 글

변수  (0) 2013.08.01
isspace()  (0) 2013.02.03
Namespace  (0) 2012.10.24
스트림 - 파일 I/O  (0) 2012.10.24
스트림 - 표준입출력(cout, cin)  (0) 2012.10.24
Posted by No names
,