如何在iOS中获取保存的图像文件路径

时间:2013-04-25 13:59:16

标签: iphone ios uiimagepickercontroller photo-gallery

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

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

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

1 个答案:

答案 0 :(得分:19)

试试这个:

- (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;
}