2011-01-14 5 views
1

내 응용 프로그램에서 사진 라이브러리에 저장된 사진을 사용하고 있습니다. 사진 라이브러리에 저장된 사진의 경로를 검색하려면 어떻게해야합니까?사진 라이브러리 경로를 가져 오는 방법은 무엇입니까?

나는 NSData으로 그 데이터를 변환했고 그 데이터를 응용 프로그램의 샌드 박스 (한 파일에 저장 됨)에 저장했습니다. sqlite를 사용하여 데이터베이스를 만들고 파일 경로를 데이터베이스에 저장했습니다. 이미지가 필요할 때마다 데이터베이스에 저장된 파일 경로에서 NSData을 검색합니다.

NSMutableData *data=[[NSMutableData alloc]init];  
data =UIImagePNGRepresentation([UIImageimageNamed:@"image.png"]);   
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);  
NSString *documentsDirectory = [paths objectAtIndex:0];  
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"first.txt"]; [data writeToFile:filePath atomically:YES];  
NSString *m=[[@"'"stringByAppendingFormat:filePath]stringByAppendingFormat:@"'"]; 
NSString *query=[[@"INSERT INTO newtable (image) VALUES (" stringByAppendingFormat:m]stringByAppendingFormat:@")"]; 
NSLog(@"query....%@",query);   
[obj configureDatabase:@"Editerdb.rdb"];//function to configure database 
[obj insertInTable:query];// function to insert into db 

이 코드는 작동합니다. 간단한 방법이 있습니까?

답변

0

우선 첫 번째 줄에서는 메모리 누수가 발생합니다. 도움이 필요하면 UIImagePNGRepresentation 설명서를 참조하십시오. 첫 번째 코드 줄을 제거하십시오. NSMutableData 대신 NSData을 사용하면 이미지 내용을 변경하지 않습니다. 모두 당신이 UIImagePNGRepresentation에 문서에이 참조 자 다시 데이터베이스에서 이미지 경로하지만 이미지 자체를 저장하지 않는의

및 초

그렇게 할 때 단지 데이터베이스에서 NSData 개체를 가져 오지 이미지에 원하는 imageWithData:를 사용하여 UIImageNSData를 변환하는

+0

감사합니다.하지만 NSData를 데이터베이스에 저장하는 방법은 무엇입니까? (의미는 ... (varchar, integer ????)) – user572555

+0

그 부분은 유감 스럽지만 sqllite를 사용하지 않았습니다. txt 파일을 만들어 이미지를 저장할 수 있습니다. 아이폰에 텍스트 파일을 만드는 방법에 대한 구글 – Robin

+0

이 링크에 따라 http://howtomakeiphoneapps.com/2009/06/reading-and-writing-text-files-in-iphone-os-3-0/ – Robin