Sender: nate AT cartsys DOT com Message-ID: <3589B9CF.AC9FDAE4@cartsys.com> Date: Thu, 18 Jun 1998 18:07:27 -0700 From: Nate Eldredge MIME-Version: 1.0 To: lsantil AT calstatela DOT edu CC: djgpp AT delorie DOT com Subject: Re: Get file size in C++ References: <199806180458 DOT VAA09502 AT neptune DOT calstatela DOT edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Precedence: bulk lsantil AT calstatela DOT edu wrote: > > How is it possible to get the size of a file in C++? I know if I opened > a file in C w/ "FILE *f;" that I just include "io.h" & use printf to print its > size from the return val of "filelength(fileno(f))" but I'm using ifstream & > "fstream.h" to open my files. I looked thru the "lang/cxx/" dir & found > "iostdio.h" which makes some of the "stdio.h" defines equivalent to _IO_* > including "#define fileno _IO_fileno" //line 107// but I dont see how I can > do the same with "ifstream f". any suggestions? It looks like there's a member function of one of the classes from which `ifstream' is derived called `fd', which returns the file descriptor (aka handle) of the stream. You can then pass that to `filelength' et al. I'm not sure of the C++ syntax; it might be something like `f.fd()'. -- Nate Eldredge nate AT cartsys DOT com