2012-04-06 101 views
1

我有圖像base64字符串,所以請告訴我如何將base64string轉換爲 UIImage。我正在使用下面的代碼,但它不工作。將base64string轉換爲UIImage

NSString *base64String=[NSString stringWithFormat:@"%@",[objDIC objectForKey:@"signDriver"]]; 
NSURL *url = [NSURL URLWithString:base64String];  
NSData *imageData = [NSData dataWithContentsOfURL:url]; 
UIImage *ret = [UIImage imageWithData:imageData]; 

在此先感謝

+0

[如何在iPhone上從'Base64String'格式原始圖像數據獲取UIImage?](http://stackoverflow.com/questions/847875/how-to-get-uiimage-from-a- base64string-format-raw-image-data-on-iphone) – 2012-04-06 13:39:46

+0

[看這個答案](http://stackoverflow.com/questions/392464/any-base64-library-on-iphone-sdk),我想是完全正確的你需要什麼 – Alladinian 2012-04-06 13:41:15

回答

0

[NSData的dataWithContentsOfURL:URL]希望得到一個文件:URL指向一個文件上的格式給定的圖像磁盤的UIImage(實際上,核芯顯卡)知道如何打開。

您已經擁有存儲在base64String中的圖像數據,所以您應該能夠使用dataUsingEncoding從字符串中獲取數據。

+0

現在我使用下面的代碼,也獲取imagedata,但圖像爲空 – 2012-04-06 13:58:52

+0

NSString * base64String = [NSString stringWithFormat:@「%@」,[objDIC objectForKey:@「signDriver」]]; NSData * imageData = [base64String dataUsingEncoding:NSUTF32StringEncoding]; UIImage * ret = [UIImage imageWithData:imageData]; NSLog(@「imageData - %@」,imageData); – 2012-04-06 13:58:58

+1

'NSUTF32StringEncoding'不是base64編碼,base64沒有NSStringEncoding。 – zaph 2012-04-06 14:27:15

1

從馬特加拉格爾Cocoa With Love網站獲取代碼。轉到「在iPhone上處理Base64」,「解碼Base64」部分。

向蘋果請求添加bug report,要求添加base64支持,我認爲蘋果將其添加到SDK中的機會越大。