文件操作——图片保存到本地
2016-04-07 14:56
295 查看
- (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);
[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);
相关文章推荐
- metadata简介
- GitHub学习笔记
- ORA-01102: cannot mount database in EXCLUSIVE mode
- 高仿探探/QQ巧遇手势滑动选项卡切换源码
- 【完全背包】HDU1963Investment【数据压缩】
- HDU 1181 变形课
- iOS 9.3 升级后无法真机测试 Could not find Developer Disk Image
- 如何把AndroidStudio项目向Eclipse项目迁移
- options controlling C dialect
- STM32启动后系统初始化SystemInit()
- 5_2 木块问题(UVa101)<vector的使用>
- 052(三十)
- ubunto开启root账户并开启SSH远程访问
- Spring事务Transaction配置的五种注入方式详解
- 一个程序员的时间管理
- 史上最全的maven pom.xml文件教程详解
- RabbitMq、ActiveMq、ZeroMq、kafka之间的比较,资料汇总
- [poj 2331] Water pipe ID A*迭代加深搜索(dfs)
- java中两种随机数的产生方式
- 样本不均衡问题--过拟合欠拟合抽样