IOS文件的简单读写实例详解

IOS文件的简单读写实例详解

数组(可变与不可变)和字典(可变与不可变)中元素对象的类型,必须是NSString,NSArray,NSDictionary,NSData,否则不能直接写入文件

 #pragma mark---NSString的写入与读取---
  //1:获取路径
  NSString *docunments = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject];
  //2:在该路径下创建文件夹,文件夹名为字符串.txt
  docunments = [docunments stringByAppendingString:@"/字符串.txt"];
  //  NSLog(@"%@",docunments);
  //3:编写文本内容
  NSString *str = @"大家一起来";
  //4:将文本写入到"字符串.txt"中
  /*
   writeToFile:文件路径,在这里是documents atomically:YES(若为YES,则保证了文件的原子性,即先创建一个临时文件,直到文件内容写入成功再导入目标文件(字符串.txt),为NO,直接写入目标文件里) encoding:编码格式是个枚举值 error:错误信息,一般为nil

   */
  BOOL result = [str writeToFile:docunments atomically:YES encoding:NSUTF8StringEncoding error:nil];
  if (result) {
    NSLog(@"我成功了");
  }else{
    NSLog(@"为啥失败了");
  }

  //读取
  /*
   stringWithContentsOfFile:路径 encoding:编码 error:nil,错误信息

   */
  NSString *newStr = [NSString stringWithContentsOfFile:docunments encoding:4 error:nil];
  NSLog(@">>>>%@",newStr);
  /*
   .plist全名是:Property List,属性列表文件,它是一种用来存储串行化(当程序彻底退出后,对象就会随之消亡,但是,我们希望有些东西需要记录下来,以便于恢复,也可提升用户体验,而记录的这个过程,就叫串行化)后的对象的文件。属性列表文件的扩展名为.plist ,因此通常被称为 plist文件。文件是xml格式的。
   注意:plist文件通常用于存储用户设置,也可用于存储捆绑信息
   */
#pragma mark---NSArray的写入与读取

//获取路径
  NSString *arrayDoc = [SandBox getDocuments];
  //在arrayDoc下拼接文件名
  NSString *arrPath = [arrayDoc stringByAppendingString:@"array.plist"];
  //向数组中写入数据
  NSArray *array = @[@"25",@"55",@"05",@"5885"];
  //将数组写入文件
  [array writeToFile:arrPath atomically:YES];
  NSLog(@"数组存入路径%@",arrPath);

  //读取
  NSArray *newArray = [NSArray arrayWithContentsOfFile:arrPath];
  NSLog(@"读取的文件:%@",newArray);
#pragma mark--- 字典的写入与读取----
  NSString *dicionaryDic = [SandBox getDocuments];
  NSString *dicpath = [dicionaryDic stringByAppendingString:@"dictionary.plist"];
  NSDictionary *dictionary = @{@"name":@"甲甲",@"age":@"18"};
  [dictionary writeToFile:dicpath atomically:YES];
  NSLog(@"字典存入路径%@",dicpath);

  //读取
  NSDictionary *newdict = [NSDictionary dictionaryWithContentsOfFile:dicpath];
  NSLog( @"读取的字典文件%@",newdict);

#pragma mark--- NSData----
  NSString *DataPath = [[SandBox getDocuments]stringByAppendingString:@"Data.data"];
// NSString *string = @"丑八怪";
//  NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];

  UIImage *image = [UIImage imageNamed:@"2"];
  NSData *data = UIImageJPEGRepresentation(image, 0.5);

  [data writeToFile:DataPath atomically:YES];
  NSLog(@"%@",DataPath);
  //读取
  NSData *newData = [NSData dataWithContentsOfFile:DataPath];
//  NSString *new = [[NSString alloc]initWithData:newData encoding:4];
  UIImage *new = [UIImage imageWithData:newData scale:1];

  NSLog(@"%@",newData);
  NSLog(@"%@",new);
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • IOS 文件读写操作详解及简单实例

    iPhone 文件读写操作 1,写文件操作 - (IBAction)btnWrite:(id)sender { //创建文件管理器 NSFileManager *fileManager = [NSFileManager defaultManager]; //获取路径 //参数 要获取的哪种路径 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSSt

  • IOS文件的简单读写实例详解

    IOS文件的简单读写实例详解 数组(可变与不可变)和字典(可变与不可变)中元素对象的类型,必须是NSString,NSArray,NSDictionary,NSData,否则不能直接写入文件 #pragma mark---NSString的写入与读取--- //1:获取路径 NSString *docunments = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObje

  • IOS 获取APP 版本号的实例详解

    IOS 获取APP 版本号的实例详解 看代码的时候看到一句,用于获取.plist文件的版本号 labelVersion.text = [NSString stringWithFormat:@"v%@", [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleVersionKey]]; 比较感兴趣的是后面的参数 kcFBundleVersionKey ,竟然是CFBundle.h已经定于好的属性,下面有

  • IOS 创建并发线程的实例详解

    IOS 创建并发线程的实例详解 创建并发线程 主线程一般都是处理UI界面及用户交互的事儿的.其他的事一般就要另外的线程去处理,如下载,计算等... 现在先简单创建3个线程,分别打印出1-1000,,为了方便,线程3就放在主线程中执行. - (void) firstCounter{ @autoreleasepool { NSUInteger counter = 0; for (counter = 0; counter < 1000; counter++){ NSLog(@"First Cou

  • C# 中SharpMap的简单使用实例详解

    本文是利用ShapMap实现GIS的简单应用的小例子,以供学习分享使用.关于SharpMap的说明,网上大多是以ShapeFile为例进行简单的说明,就连官网上的例子也不多.本文是自己参考了源代码进行整理的,主要是WinForm的例子.原理方面本文也不过多论述,主要是实例演示,需要的朋友还是以SharpMap源码进行深入研究. 什么是SharpMap ? SharpMap是一个基于.net 2.0使用C#开发的Map渲染类库,可以渲染各类GIS数据(目前支持ESRI Shape和PostGIS格

  • Android 实现夜间模式的快速简单方法实例详解

    ChangeMode 项目地址:ChangeMode Implementation of night mode for Android. 用最简单的方式实现夜间模式,支持ListView.RecyclerView. Preview Usage xml android:background="?attr/zzbackground" app:backgroundAttr="zzbackground"//如果当前页面要立即刷新,这里传入属性名称 比如 R.attr.zzb

  • 微信小程序之网络请求简单封装实例详解

    微信小程序之网络请求简单封装实例详解 在微信小程序中实现网络请求相对于Android来说感觉简单很多,我们只需要使用其提供的API就可以解决网络请求问题. 普通HTTPS请求(wx.request) 上传文件(wx.uploadFile) 下载文件(wx.downloadFile) WebSocket通信(wx.connectSocket) 为了数据安全,微信小程序网络请求只支持https,当然各个参数的含义就不在细说,不熟悉的话可以:可以去阅读官方文档的网络请求api,当我们使用request

  • 最详细的文件上传下载实例详解(推荐)

    在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用apache的开源工具common-fileupload这个文件上传组件.这个common-fileupload上传组件的jar包可以去apache官网上面下载,也可以在struts的lib文件夹下面找到,stru

  • 基于iOS Realm数据库的使用实例详解

    首先下载Realm源代码,https://realm.io/cn/docs/objc/latest 将下载的文件解压,从 ios/static/ 目录中将 Realm.framework 拖曳到 Xcode 工程的文件导航器内,然后在 Xcode 文件导航器中选中工程.然后选择应用目标,前往 Build Phases 选项卡.在 Link Binary with Libraries 部分中单击 + 按钮,然后添加 libc++.tbd 和 libz.tbd.这样还没有完,我们还需要安装插件,打开

  • python PyVCF文件处理VCF文件格式实例详解

    目录 引言 PyVCF库的安装 PyVCF库的导入 PyVCF库详细介绍 使用实例: _Record对象------位点信息的储存形式 Reader对象------处理vcf文件,构建结构化信息 综合使用: 引言 vcf文件的全称是variant call file,即突变识别文件,它是基因组工作流程中产生的一种文件,保存的是基因组上的突变信息.通过对vcf文件进行分析,可以得到个体的变异信息.嗯,总之,这是很重要的文件,所以怎么处理它也显得十分重要.它的文件信息如下: 文件的开头是一堆以“##

  • Java操作Excel文件解析与读写方法详解

    目录 一.概述 二.Apache POI 三.XSSF解析Excel文件 1.Workbook(Excel文件) 2.Sheet(工作簿) 3.Row(数据行) 4.Cell(单元格) 四.超大Excel文件读写 1.使用POI写入 2.使用EasyExcel 一.概述 在应用程序的开发过程中,经常需要使用 Excel 文件来进行数据的导入或导出.所以,在通过Java语言实现此 类需求的时候,往往会面临着Excel文件的解析(导入)或生成(导出). 在Java技术生态圈中,可以进行Excel文件

随机推荐