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条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
    • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
    • ¥15 matlab有关常微分方程的问题求解决
    • ¥15 perl MISA分析p3_in脚本出错
    • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
    • ¥15 ubuntu虚拟机打包apk错误
    • ¥199 rust编程架构设计的方案 有偿
    • ¥15 回答4f系统的像差计算
    • ¥15 java如何提取出pdf里的文字?
    • ¥100 求三轴之间相互配合画圆以及直线的算法