我在NSMutableArray's
对象中得到一个字节数组(我估计)。NSMutableArray
我得到的是Xml
从服务URL解析..现在我需要转换那个字节数组到UIImage
..通过谷歌,发现转换为NSData
,然后UIImage
,但无法理解如何..?我该怎么办?
我的数组看起来像这样:
(
{
Name = "John";
Image = "/9j/4AAQSkZJRgABAQAAAQABAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJS
kcgSlBFRyB2NjIpLCBxdWFsaXR5ID0gODAK/9sAQwAGBAUGBQQGBgUGBwcGCAoQCgoJCQoUDg8MEBcUGBgXF
BYWGh0lHxobIxwWFiAsICMmJykqKRkfLTAtKDAlKCko/9sAQwEHBwcKCAoTCgoTKBoWGigoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo/8AAEQgEKwZAAwEiAAIRAQMRAf/........
//big byte array
}
)
首先,我需要清楚它是否是一个字节数组?如何从中提取图像?
答案 0 :(得分:5)
您的数据组织如下:
NSArray
或NSMutableArray
(正如您所写)。NSDictionary
实例。所以获取图像,你需要走这条路:
NSMutableArray* array = ... // from XML
NSDictionary* dict = [array objectAtIndex: 0];
NSString* dataString = [dict objectForKey: @"Image"];
NSData* imageData = [dataString base64DecodedData];
UIImage* image = [UIImage imageWithData: imageData];
请注意,Base64解码不是iOS的一部分。但网上有许多实现将字符串解码为数据。只是谷歌吧。
可以在GitHub上找到看起来很简单的Base64实现。