Disk space exception ?



 DEVELOP > c-Plus-Plus > Disk space exception ?

LINK TO THIS PAGE  


rating :  0   |  0


  Page 1 of 1

1

 
Topic: DEVELOP > c-Plus-Plus
User: "Sagar Choudhary"
Date: 29 Mar 2005 11:39:50 PM
Object: Disk space exception ?
Is there any exception related to disk space ?
If not how else can we check the availability of the disk space in a
c++ program. I know ostream helps a bit. When we try to open a file
when there's no disk space ostream::rdstate() returns badbit.
.

User: "Peter MacMillan"

Title: Re: Disk space exception ? 29 Mar 2005 11:46:55 PM
Sagar Choudhary wrote:

Is there any exception related to disk space ?
If not how else can we check the availability of the disk space in a
c++ program. I know ostream helps a bit. When we try to open a file
when there's no disk space ostream::rdstate() returns badbit.

IIRC, that's a platform specific thing that you'll want to look into the
platform documentation for. I'm not aware of any standard C++ way of
finding how much space is free (apart from the ostream being writable
and it... not being writable or, as you pointed out, returning an error).
For example, the Microsoft Windows PlatformSDK offers:
BOOL GetDiskFreeSpace(
LPCTSTR lpRootPathName,
LPDWORD lpSectorsPerCluster,
LPDWORD lpBytesPerSector,
LPDWORD lpNumberOfFreeClusters,
LPDWORD lpTotalNumberOfClusters
);
(include windows.h)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/getdiskfreespace.asp
--
Peter MacMillan
e-mail/msn: peter@writeopen.com
icq: 1-874-927
GCS/IT/L d-(-)>-pu s():(-) a- C+++(++++)>$ UL>$ P++ L+ E-(-) W++(+++)>$
N o w++>$ O !M- V PS PE Y+ t++ 5 X R* tv- b++(+) DI D+(++)>$ G e++ h r--
y(--)
.

User: "Thomas Matthews"

Title: Re: Disk space exception ? 30 Mar 2005 09:48:39 AM
Sagar Choudhary wrote:

Is there any exception related to disk space ?
If not how else can we check the availability of the disk space in a
c++ program. I know ostream helps a bit. When we try to open a file
when there's no disk space ostream::rdstate() returns badbit.

Wrong, or let us clarify. The rdstate() method returns
badbit when there is problem writing to the stream. We
don't have a clue as to which problem(s) are associated
with the "badbit". For example, one could not distinguish
faulty media, missing media or full media by using the
"badbit". All we know is that there was an error. The
details are up to the implementation or the platform.
As for availability of disk space, the best course of
action is to use some platform specific functions since
C++ has no support for this.
--
Thomas Matthews
C++ newsgroup welcome message:
http://www.slack.net/~shiva/welcome.txt
C++ Faq: http://www.parashift.com/c++-faq-lite
C Faq: http://www.eskimo.com/~scs/c-faq/top.html
alt.comp.lang.learn.c-c++ faq:
http://www.comeaucomputing.com/learn/faq/
Other sites:
http://www.josuttis.com -- C++ STL Library book
http://www.sgi.com/tech/stl -- Standard Template Library
.


  Page 1 of 1

1

 


Related Articles
 

NEWER

pg.1232     pg.940     pg.716     pg.544     pg.412     pg.311     pg.234     pg.175     pg.130     pg.96     pg.70     pg.50     pg.35     pg.24     pg.16     pg.10     pg.6     pg.3     pg.1

OLDER