在下载文件之前检查iphone设备上是否有足够的空间

现在我能够成功下载远程文件,

但是,如果用户选择多个文件名并按下载,用户可以选择一个文件。 所以在下载文件之前,我想检查是否有足够的空间在iPhone上,如果是,然后下载,如果没有,那么用户可以看到消息框“没有足够的空间”,他将取消选中几个文件名,然后他可以从服务器下载文件…

有没有办法在下载前检查可用空间?

先谢谢你

使用此function:

#include  #include  +(float) diskSpace { NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); struct statfs tStats; statfs([[paths lastObject] cString], &tStats); float total_space = (float)(tStats.f_blocks * tStats.f_bsize); return total_space; // for freespace: // float free_space = (float)(tStats.f_bavail * tStats.f_bsize); // return free_space } 
 + (long long)getFreeSpace { long long freeSpace = 0.0f; NSError *error = nil; NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; if (dictionary) { NSNumber *fileSystemFreeSizeInBytes = [dictionary objectForKey: NSFileSystemFreeSize]; freeSpace = [fileSystemFreeSizeInBytes longLongValue]; } else { //Handle error } return freeSpace; } 

使用此代码查询文件系统以获取可用空间。