代码
#include
<
sys
/
param.h
>
#include < sys / mount.h >
long long freeSpace() {
struct statfs buf;
long long freespace = - 1 ;
if (statfs( " / " , & buf) >= 0 ){
freespace = ( long long )buf.f_bsize * buf.f_bfree;
}
return freespace;
}
+ ( float )getTotalDiskSpaceInBytes {
NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
struct statfs tStats;
statfs([[paths lastObject] cString], & tStats);
float totalSpace = ( float )(tStats.f_blocks * tStats.f_bsize);
return totalSpace;
}
// 以上代码,需要的.h里进行声明,应用如下:
NSLog( @" total disk= %.2f GB " , [Utilitys getTotalDiskSpaceInBytes] / ( 1024.0 * 1024.0 * 1024 ));
NSLog( @" free disk= %.2f GB " , freeSpace() / ( 1024.0 * 1024.0 * 1024 ));
#include < sys / mount.h >
long long freeSpace() {
struct statfs buf;
long long freespace = - 1 ;
if (statfs( " / " , & buf) >= 0 ){
freespace = ( long long )buf.f_bsize * buf.f_bfree;
}
return freespace;
}
+ ( float )getTotalDiskSpaceInBytes {
NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
struct statfs tStats;
statfs([[paths lastObject] cString], & tStats);
float totalSpace = ( float )(tStats.f_blocks * tStats.f_bsize);
return totalSpace;
}
// 以上代码,需要的.h里进行声明,应用如下:
NSLog( @" total disk= %.2f GB " , [Utilitys getTotalDiskSpaceInBytes] / ( 1024.0 * 1024.0 * 1024 ));
NSLog( @" free disk= %.2f GB " , freeSpace() / ( 1024.0 * 1024.0 * 1024 ));