我有这张照片,我手动添加到我的项目中并添加了这样的调用。
NSString *path = [[NSBundle mainBundle] pathForResource:@"picture" ofType:@"png"];
但是我想知道是否可以拍照并将其放入可以像上面的代码那样检索的资源的路径中?我的总体目标是使用以下代码将我的图片上传到服务器。
[request addFile:path forKey:@"upload"];
任何提示或帮助都将深受赞赏。
答案 0 :(得分:0)
您无法将图片(图片)添加到应用套装中,但是您可以将图片保存到应用沙箱中。 E.g:
NSData *sourceData = UIImagePNGRepresentation(image);
BOOL result = [sourceData writeToFile:savePath atomically:YES];
其中image
为UIImage
,savePath
为您要保存图片的位置NSString
。
如果要将图像保存为JPEG(而不是PNG),请使用UIImageJPEGRepresentation
。
答案 1 :(得分:0)
如果您正在拍摄NSData
照片..
NSData *imageData=UIImageJPEGRepresentation(image);
[request addData:imageData withFileName:@"imagepicture.jpeg" andContentType:@"image/jpeg" forKey:@"upload"];
FileName您可以提供的任何内容..
如果是PNG
图片那么
NSData *imageData=UIImagePNGRepresentation(image);
[request addData:imageData withFileName:@"imagepicture.png" andContentType:@"image/png" forKey:@"upload"];
希望它可以帮到你...
答案 2 :(得分:0)
您可以先将图像添加到文档目录中,然后返回图像的网址:
NSData *thumbData = UIImagePNGRepresentation(thumbImg);
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *imgUrl = [documentsDirectory stringByAppendingFormat:@"/image.png"];
[thumbData writeToFile:imgUrl atomically:NO];
现在图片可以像这样使用imgUrl取回:
UIImage *img=[UIImage imageWithContentsOfFile:imgUrl];
Hope this helps!