我有一些NSData
它是 Base-64 编码的,我想解码它,我看到了一个如下所示的示例
NSData* myPNGData = [xmlString dataUsingEncoding:NSUTF8StringEncoding];
[Base64 initialize];
NSData *data = [Base64 decode:img];
cell.image.image = [UIImage imageWithData:myPNGData];
然而,这给我带来了很多错误,我想知道该怎么做才能让它发挥作用。我是否需要将某种类型的文件导入到我的项目中,或者是否必须包含框架?
这些是我得到的错误
Use of undeclared identifier 'Base64'
Use of undeclared identifier 'Base64'
Use of undeclared identifier 'cell'
我到处都看过,但不知道该怎么做。
您可以将 Base64 编码的字符串解码为NSData
:
-(NSData *)dataFromBase64EncodedString:(NSString *)string{
if (string.length > 0) {
//the iPhone has base 64 decoding built in but not obviously. The trick is to
//create a data url that's base 64 encoded and ask an NSData to load it.
NSString *data64URLString = [NSString stringWithFormat:@"data:;base64,%@", string];
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:data64URLString]];
return data;
}
return nil;
}
使用上述方法从 Base64 字符串获取图像的示例:
-(void)imageFromBase64EncodedString{
NSString *string = @""; // replace with encocded string
NSData *imageData = [self dataFromBase64EncodedString:string];
UIImage *myImage = [UIImage imageWithData:imageData];
// do something with image
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)