是否可以將iPhone上相機捕獲的圖像保存到自定義目錄或iphone上的某個位置,而不是保存到相機膠捲上?將圖像存儲到iphone
我想將圖像保存到設備上,然後在稍後階段訪問,而不是使用ALAssets從相機卷讀取。
這可能嗎?
是否可以將iPhone上相機捕獲的圖像保存到自定義目錄或iphone上的某個位置,而不是保存到相機膠捲上?將圖像存儲到iphone
我想將圖像保存到設備上,然後在稍後階段訪問,而不是使用ALAssets從相機卷讀取。
這可能嗎?
是的,你可以將它們保存到你的應用程序的文檔文件夾。這裏有一個例子:
// Create path
NSString *imagePath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/ImageName.png"];
// Write image to PNG
[UIImagePNGRepresentation(image) writeToFile:imagePath atomically:YES];
找回它:
UIImage *image = [UIImage imageWithContentsOfFile:imagePath];
要列出的所有目錄中的文件:
NSFileManager *manager = [NSFileManager defaultManager];
NSArray *fileList = [manager directoryContentsAtPath:[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]];
for (NSString *s in fileList){
NSLog(s);
}
謝謝。我想知道圖像的管理。一旦保存到文件夾,如何獲取存儲圖像的url? – jarryd 2011-03-10 19:42:49
@ Helium3我已經更新瞭如何保存爲pngs的示例(儘管jpgs中有類似的'UIImageJPEGRepresentation'方法),如何檢索保存的圖像以及如何列出目錄的內容。 – theChrisKent 2011-03-10 19:50:49
謝謝。如果圖像沒有名字怎麼辦?有沒有一種方法可以將圖像保存到設備中並獲取url,以便可以存儲url以用於以後的圖像回調?或者應該爲照相機捕獲的每個圖像動態創建名稱? – jarryd 2011-03-10 22:33:50
使用此寫
// imageData = NSData object
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docsPath = [paths objectAtIndex:0];
NSString *imageCacheDirPath = [docsPath stringByAppendingPathComponent:@"anyFolderName"];
NSString *imageCachePath = [imageCacheDirPath stringByAppendingPathComponent:@"image.jpg"];
[imageData writeToFile:imageCachePath atomically:YES];
而且以下片段再次讀取數據:
// Get path of image
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docsPath = [paths objectAtIndex:0];
NSString *imageCacheDirPath = [docsPath stringByAppendingPathComponent:@"anyFolderName"];
NSString *imageCachePath = [imageCacheDirPath stringByAppendingPathComponent:@"image.jpg"];
NSData *imageData = [NSData dataWithContentsOfFile:imageCachePath];
注意,在這個例子中,圖像存儲在您的「文檔」文件夾的子文件夾,該文件夾被稱爲「anyFolderName」。變量docsPath包含您的目錄的「文檔」文件夾的路徑。
請注意,這只是我使用的代碼,它從iOS 3.0時代開始,可能有更好的方法將圖像存儲到應用程序的Documents文件夾中。
保存1000個圖像到iPhone會導致任何問題?像記憶體管理問題? – 2013-12-18 09:47:47
@Joe:謝謝:P – jarryd 2011-03-30 19:32:34