核心数据达到存储限制

时间:2013-09-20 01:11:18

标签: core-data storage

当我想在Core Data下保存数据并且系统在存储容量方面达到极限时,我需要知道如何做出反应。

  • 我怎么知道我没有多少存储空间?
  • 我怎么知道我没有足够的空间存放我想存储的内容?
  • 如果有错误,我该如何处理错误(它们是什么?)?

我已经使用了很多核心数据,但主要用于只读数据或存储少量数据。

欢迎任何关于该主题的良好文件或教程的建议。 我不需要对核心数据进行任何一般性的介绍。

1 个答案:

答案 0 :(得分:1)

检查磁盘空间:

      NSDictionary* fileAttribs = [[NSFileManager defaultManager] attributesOfFileSystemForPath:@"/" error:&error];
      unsigned long long freeSpace = [[fileAttribs objectForKey:NSFileSystemFreeSize] longLongValue];
      NSLog(@"free space: %dGB", (int)(freeSpace / 1073741824)); //Note you just have to change the value here to get KB, MB, GB, TB etc...

文件读/写的Cocoa域错误代码是:

NSFileNoSuchFileError = 4
NSFileLockingError = 255
NSFileReadUnknownError = 256
NSFileReadNoPermissionError = 257
NSFileReadInvalidFileNameError = 258
NSFileReadCorruptFileError = 259
NSFileReadNoSuchFileError = 260
NSFileReadInapplicableStringEncodingError = 261
NSFileReadUnsupportedSchemeError = 262
NSFileReadTooLargeError = 263
NSFileReadUnknownStringEncodingError = 264
NSFileWriteUnknownError = 512
NSFileWriteNoPermissionError = 513
NSFileWriteInvalidFileNameError = 514
NSFileWriteFileExistsError = 516
NSFileWriteInapplicableStringEncodingError = 517
NSFileWriteUnsupportedSchemeError = 518
NSFileWriteOutOfSpaceError = 640
NSFileWriteVolumeReadOnlyError = 642