0

嗨,我正在开发一个应用程序,其中可以选择从 iOS 照片库中挑选照片。我必须将选定的照片上传到服务器。要上传图像,我使用的是Kaltura SDK,所以我处于无法直接发送UIImage到服务器的情况。我需要发送保存的图像文件路径

为此,我找到了一个解决方案,即将选定的照片保存在特定的文件路径中,然后我将使用该文件路径。但问题是我不想再次将照片保存在手机内存中,因为这些照片已经存储在特定路径中。

那么有没有其他选项可以在不再次保存的情况下检索保存的图像文件路径?

4

1 回答 1

20

试试这个:

- (void)saveImage: (UIImage*)image
{
    if (image != nil)
    {
        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
                                                         NSUserDomainMask, YES);
        NSString *documentsDirectory = [paths objectAtIndex:0];
        NSString* path = [documentsDirectory stringByAppendingPathComponent:
                      @"test.png" ];
        NSData* data = UIImagePNGRepresentation(image);
        [data writeToFile:path atomically:YES];
    } 
}

- (UIImage*)loadImage
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
                                                     NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString* path = [documentsDirectory stringByAppendingPathComponent:
                  @"test.png" ];
    UIImage* image = [UIImage imageWithContentsOfFile:path];
    [self sendAction:path];
    return image;
}
于 2013-04-25T14:02:08.307 回答