私はviewWillDisappear
にファイルに書き出し、viewDidLoad
にメモリに読み込みたいインメモリキャッシュを持っています。私のコード:いくつかのNSLogとデバッグに基づきファイルへのNSDataの書き込み/読み取りに失敗する
- (void)viewDidLoad
{
[super viewDidLoad];
NSFileManager *fileManager = [[NSFileManager alloc] init];
NSArray *fileArray = [fileManager URLsForDirectory:NSCachesDirectory inDomains:NSUserDomainMask];
NSString *filePath = [NSString stringWithFormat:@"%@cache_%d", [fileArray lastObject], self.index];
NSURL *fileUrl = [NSURL URLWithString:filePath];
if ([fileManager fileExistsAtPath:filePath]) {
self.thumbnailsCache = [NSDictionary dictionaryWithContentsOfURL:fileUrl];
}
}
- (void)viewWillDisappear:(BOOL)animated
{
NSFileManager *fileManager = [[NSFileManager alloc] init];
NSArray *fileArray = [fileManager URLsForDirectory:NSCachesDirectory inDomains:NSUserDomainMask];
NSString *filePath = [NSString stringWithFormat:@"%@cache_%d", [fileArray lastObject], self.index];
NSURL *fileUrl = [NSURL URLWithString:filePath];
[self.thumbnailsCache writeToURL:fileUrl atomically:YES];
}
、正常にファイルを書き込むようですが、それを読み取ろうとする上で、単にファイルが見つからないと言います。私は間違って何をしていますか?ありがとう。
編集:self.thumbnailsCache
は、NSDictionary
のNSData
オブジェクトです。
あなただけのファインダー – Bala