《Objective-C基础教程》第17章 文件加载和保存
发布日期:2022-02-01 13:46:24
浏览次数:35
分类:技术文章
本文共 924 字,大约阅读时间需要 3 分钟。
Cocoa提供了两个处理文件的通用类:属性列表和对象编码
17.1 属性列表(property list)
通常简写为plist
这些列表涌来存储Cocoa能够处理的对象包括NSArray、NSString、NSDictionary、NSNumber、NSData和NSDate17.1.1 NSDate
NSDate *date=[NSDate date];//获取当前的日期和时间NSDate *date=[NSDate dateWithTimeIntervalSinceNow:-(24*60*60)];//获取24小时前的日期和时间
17.1.2 NSData
NSData可以包含大量字节,可以获得数据的长度和指向字节起始位置的指针
17.1.3 写入和读取属性列表
NSArray *phrase=[NSArray arrayWithObject:@"s",@"d",@"s",nil];[phrase writeToFile:@"/tmp/sds.txt" atomically:YES];//atomically是否首先将文件内容保存在临时问价中,再和原始文件交换,防止保存过程中出现意外,破坏原始文件(除非保存的文件过大,否则应该使用)NSArray *phrase2=[NSArray arrayWithContentsOfFile:@"/tmp/sds.txt"];
17.1.4 修改对象类型
1、强制转换,便利plist文件并创建一个平行结果的可修改对象
2、NSPropertyListSerialization17.2 编码对象
当对象需要保存自身时,就会调用encodeWithCoder:;当对象需要加载自身时,就会调用initWithCoder:。
initWithCoder:和其他init方法一样,再为对象执行操作之前,需要使用超类进行初始化,可以采用两种方法,具体取决于父类。 如果父类采用了NSCoding协议,则应该调用[super initWithCoder:decoder],否则只需要调用[super init]。例如,NSObject不采用NSCoding协议,因此采用简单的init方法。转载地址:https://blog.csdn.net/shidesheng5435/article/details/47688733 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
感谢大佬
[***.8.128.20]2024年04月04日 21时15分19秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
安卓中如何实现左滑菜单
2021-06-29
安卓流式布局FlowLayout样例
2021-06-29
Kotlin打印方法执行耗时
2021-06-29
Unity 之 UGUI Button按钮组件详解
2021-06-29
超实用的浏览器插件:永久去除站内广告
2021-06-29
C#设计模式 之 单例模式
2021-06-29
C# 之 概率随机数
2021-06-29
Unity 之 贝塞尔曲线介绍和实际使用
2021-06-29
程序人生 -- 致已经逝去2020
2021-06-29
C#设计模式 之 设计模式概述
2021-06-29
Unity 之 实现老虎机滚动抽奖效果
2021-06-29
Unity 之 制作翻牌效果
2021-06-29
Unity 之 记录一个关于刚体穿透的问题
2021-06-29
Unity 之 获取发布APK的SHA1值步骤详解
2021-06-29
Unity 之 实用工具类分享
2021-06-29
C#设计模式 之 抽象工厂模式
2021-06-29
C#设计模式 之 生成器模式
2021-06-29
C#设计模式 之 工厂方法模式
2021-06-29
C#设计模式 之 原型模式
2021-06-29