0

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

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

我经常使用 Core Data,但主要用于只读数据或存储少量数据。

任何关于该主题的好文档或教程的建议都将受到欢迎。不过,我不需要对 Core Data 进行任何一般性的介绍。

4

1 回答 1

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
于 2013-09-20T05:21:15.020 回答