kcl158sfc112 2015-11-24 02:25 采纳率: 0%
浏览 1820

通过base64编码转化为image 并保存在沙箱

    //command是phonegap js与oc交互传过来的参数列表
    //
    NSString *url = [command.arguments objectAtIndex:0];
// 去除base64前缀 取前20做对比 并作为文件名存储
//NSLog(@"%@",url);
NSString *imgName = [url substringWithRange:NSMakeRange(28, 42)];
NSLog(@"%@",imgName);
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSLog(@"%@",documentsPath);
NSString *imgPath = [NSString stringWithFormat:@"%@/img",documentsPath];
if(![[NSFileManager defaultManager]fileExistsAtPath:imgPath]){
    [[NSFileManager defaultManager]createDirectoryAtPath:imgPath withIntermediateDirectories:YES attributes:nil error:nil];
}
NSData *imgData =[[NSData alloc]initWithBase64EncodedString:url options:NSDataBase64DecodingIgnoreUnknownCharacters];
NSString *imgNameA = [imgPath stringByAppendingFormat:@"%@/.png",imgName];
if (![[NSFileManager defaultManager]fileExistsAtPath:imgNameA]) {
    UIImage *image = [UIImage imageWithData:imgData];
    NSLog(@"%@",image);
    [UIImagePNGRepresentation(image) writeToFile:imgNameA atomically:YES];
    //[UIImageJPEGRepresentation(image, 1.0) writeToFile:imgNameA atomically:YES];

图片说明

图片说明
为啥imgData为空 查看文档看了看 我的url是可以decode成图片的

图片说明
不太明白为啥

            但是 把NSData *imgData =[[NSData alloc]initWithBase64EncodedString:url options:NSDataBase64DecodingIgnoreUnknownCharacters];
            换成ios6的NSData *imgData =[[NSData alloc]initWithBase64Encoding:url];
            imgData就不为空了 但是 [UIImage imageWithData:imgData]返回的结果为空 感觉是data的数据不太对
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
    • ¥15 让node服务器有自动加载文件的功能
    • ¥15 jmeter脚本回放有的是对的有的是错的
    • ¥15 r语言蛋白组学相关问题
    • ¥15 Python时间序列如何拟合疏系数模型
    • ¥15 求学软件的前人们指明方向🥺
    • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
    • ¥20 双层网络上信息-疾病传播
    • ¥50 paddlepaddle pinn
    • ¥20 idea运行测试代码报错问题