• 文件操作——图片保存到本地


    - (void)viewDidLoad {

        [super viewDidLoad];

        

    }

    - (IBAction)selectedPhoto:(id)sender {

        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {

            //创建iamgePickerController对象

            UIImagePickerController *ipc = [[UIImagePickerController alloc]init];

            //设置sourceType

            ipc.sourceType  = UIImagePickerControllerSourceTypePhotoLibrary;

            ipc.delegate = self;

            [self presentViewController:ipc animated:YES completion:nil];

        }

    }

    //获取选中的图片

        UIImage *orgImage = [info objectForKey:UIImagePickerControllerOriginalImage];

        self.photoImageView.image = orgImage;

        //图片保存到本地,

        /*

         数据持久化,永久保存

         1.NSUserDefault  保存少量的数据,几张图片,字符串,小量的数组,字典某个对象

         2.文件 图片,视频,一个资源就是一个文件

         3.数据库,SQLite3

         4.CoreData

        应用程序的沙盒

         1.获取应用程序允许用户操作的document路径

         */

        NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject];

        //2.创建文件路径

        NSString *filePath = [docPath stringByAppendingPathComponent:@"name"];

        NSLog(@"%@",filePath);

        //3.判断文件是否存在

        if ([[NSFileManager defaultManager] fileExistsAtPath:filePath] == NO) {

            //4,创建文件

            [[NSFileManager defaultManager]createFileAtPath:filePath contents:nil attributes:nil];

            //5.写入数据将UIImage 转化为二进制数据NSData

            NSData *imageData = UIImagePNGRepresentation(orgImage);

            [imageData writeToFile:filePath atomically:YES];

            //读取数据

            NSError *errMsg = nil;

            NSData *d = [NSData dataWithContentsOfFile:filePath options:NSDataReadingUncached error:&errMsg];

            if (errMsg) {

    //            NSAssert(errMsg, @"cuole");

                NSLog(@"%@",errMsg);

                return;

            }

            //二进制NSData转化为UIImage

            UIImage *img = [UIImage imageWithData:d];

        }

    //    //将图片报存到系统相册

    //    UIImageWriteToSavedPhotosAlbum(orgImage, nil, nil,nil);

  • 相关阅读:
    利用http协议实现图片窃取
    数字信号处理与音频处理(使用Audition)
    算法--堆排序学习以及模板
    HDInsight-Hadoop实战(一)站点日志分析
    自己动手写缓存Version1
    Xenomai 的模式切换浅析
    JSF学习四 标签
    chrome扩展——Postman
    CSS3:clip-path具体解释
    大型站点的前期规划
  • 原文地址:https://www.cnblogs.com/yangqinglong/p/5363614.html
Copyright © 2020-2023  润新知