2012-09-28 3 views
1

NSStringNSString에있는 이미지 데이터를 가져오고 UIImageView에 이미지를 얻으 려하는데 문자열을 데이터로 변환하는 데 문제가 있습니다 (인코딩 문제 일 수 있습니까?).이미지 데이터를 UIImage에

// this works 
NSURL* imageurl = [NSURL URLWithString:@"http://www.google.co.in/intl/en_ALL/images/logos/images_logo_lg.gif"]; 
NSData* data = [NSData dataWithContentsOfURL:imageurl]; 
UIImage* image = [UIImage imageWithData:data]; 
imageview.image=image; 


// i am trying this 
NSString* str1 = @"<47494638 .......... 47494638>"; 
NSData* data1 = [str dataUsingEncoding:NSUTF8StringEncoding]; 
UIImage* image1 = [UIImage imageWithData:data1]; 

imageview1.image=image1; 
+0

를 보라 나를 위해 일한; –

+0

이미지는 어떻게 인코딩됩니까? –

답변

2

어디에서 그 문자열을 가져 왔습니까?

base64 인코딩을 사용하여 이미지를 더 나은 문자열로 변환하려는 경우. 이 문자열 자체는 모든 브라우저에서도 식별됩니다. 이미지의 base64 인코딩에는 많은 코드 스 니펫 (snippet)을 사용할 수 있습니다.

다음 하나는 NSDataAddition 클래스에 대한

-(NSString *)getStringFromImage:(UIImage *)image{ 


    NSData *decdata1 = UIImagePNGRepresentation(image); 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 
    NSString *appFile = [documentsDirectory stringByAppendingPathComponent:@"server.png"]; 

    [decdata1 writeToFile:appFile atomically:YES]; 


    if(image){ 
     NSData *dataObj = UIImageJPEGRepresentation(image, 1); 
     return [dataObj base64Encoding]; 
    } else { 
     return @""; 
    } 
} 

내가 ("%의 @"@ 데이터)를 NSLog에서 str1과 값을 얻을입니다 Base64 catogary

관련 문제