2012-11-27 3 views
0

내 앱에서는 이미지를 내 문서 폴더에 저장하고 URI를 데이터베이스에 저장합니다.iOS Core 데이터가 저장된 URI의 이미지를 열 수 없습니다.

db에 저장된 URI를 기반으로 이미지를로드하려고 할 때마다 결과적으로 "nil"이 반환됩니다.

저장된 URI는 다음과 같습니다

/사용자/MyName로/라이브러리/응용 프로그램 지원/아이폰 시뮬레이터/6.0/응용 프로그램/78325CF9-73B0-4D0D-B136-FD8FF8D837C1/문서/WC_45FEAF25-AC0C -4E91-A5E2-AA48215F1E48-3147-000005C6C9E65B42.jpg

나는 이미지가 있음을 볼 수 있지만하여 ITerm에서이 같은 디렉토리에 CD를 가지고 사용하여 ITerm에서 그것으로 볼 때 :

/사용자/MyName로/라이브러리/응용 프로그램 \ 지원/아이폰 \/6.0/응용 프로그램/78325CF9-73B0-4D0D-B136-FD8FF8D837C1이/문서/WC_45FEAF25-AC0C-4E91-A5E2-AA48215F1E48-3147-000005C6C9E65B42.jpg

시뮬레이터 나는이 기능을 사용하여 이미지를 얻으려고 공백

전에 백 슬래시

주의 :

-(UIImage *) getImageFromURL:(NSString *)fileURL { 
    UIImage * result; 

    NSData * data = [NSData dataWithContentsOfURL:[NSURL URLWithString:fileURL]]; 
    result = [UIImage imageWithData:data]; 

    return result; //result is always nil 
} 

은 백 슬래시와 관련된 문제인가? 도움이 되었으면 대단히 감사합니다! 감사합니다

,

ZOLI

+1

당신이'[fileURL NSURL fileURLWithPath] 사용하지 않을해야 : 이미지를 검색 할 수있는 다음과 같은 기능을 다음 를 (하지만 여전히 문서 디렉토리에 이미지를 저장)? – jjv360

+0

왜? URLWithString은 정확히 –

+0

함수입니다. 로컬 파일 URL을 사용하고있는 것처럼 보이기 때문에, 앞에 'file : //'이 없으면'fileURLWithPath'를 사용하여 변환해야합니다. – jjv360

답변

1

솔루션은 데이터베이스의 URI 만 이미지 이름을 저장하지 것이었다. `:

- (UIImage*)loadImageWithName:(NSString*) name 
{ 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                 NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSString* path = [documentsDirectory stringByAppendingPathComponent: 
         [NSString stringWithString: name] ]; 
    UIImage* image = [UIImage imageWithContentsOfFile:path]; 
    return image; 
} 
관련 문제