writeToFile怎么不写原始文件?

时间:2016-02-16 09:55:36

标签: ios writetofile

我在UIImagePickerDelegate方法的iOS应用程序中保存了这样的文件didFinishPIckingMediaWithInfo:

// write
    NSString* filePath = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/invoice.jpeg"]];
    NSData *imageData = UIImageJPEGRepresentation(info[UIImagePickerControllerOriginalImage], 0.0);
    if (imageData != nil) {
        [imageData writeToFile:filePath atomically:YES];
    }

然后我正在检索这样的文件:

// load
NSString *searchFilename = @"invoice.jpeg";

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSDirectoryEnumerator *direnum = [[NSFileManager defaultManager] enumeratorAtPath:documentsDirectory];

NSString *documentsSubpath;
while (documentsSubpath = [direnum nextObject])
{
    if (![documentsSubpath.lastPathComponent isEqual:searchFilename]) {
        continue;
    }
    NSURL *fileURL = [[NSURL alloc]initFileURLWithPath:[NSString stringWithFormat:@"%@/%@",documentsDirectory,documentsSubpath]];
    [self.imageContentView setupImageViewerWithImageURL:fileURL onOpen:^{
        NSLog(@"open %@",fileURL);
    } onClose:^{
        NSLog(@"close %@",fileURL);
    }];
}

文件确实正确加载。但是,当我更新我的UIImagePickerDelegate中的照片(imageData)并尝试重新加载图像时,我仍然将原始图像写入我的应用程序文档中。

0 个答案:

没有答案