数据存储之(二):基本数据的存储
来源:互联网 发布:极速看片软件下载 编辑:程序博客网 时间:2024/05/28 23:23
基本数据的存储使用的是属性存储:
属性列表是一种XML格式的文件,拓展名为plist。当然,文件的后缀可以自由定义,不影响数据的存储和读取。
如果对象是NSString、NSDictionary、NSArray、NSData、NSNumber等类型,就可以使用writeToFile:atomically:方法直接将对象写到属性列表文件中
步骤:
1、获取并创建沙盒路径
2、将数据写入路径中
基本方法:[data writeToFile:filepath atomically:YES];
data:需要写入的数据
filepath:文件路径
YES:安全写入
字符串需要进行转码存储:
[string writeToFile:filepath atomically:YES encoding:NSUTF8StringEncoding error:nil];
3、从路径中获取数据
[NSArray arrayWithContentsOfFile:filepath];
NSArray:存储的数据是何种类型,就用对应的类型去读取.
[NSDictionary dictionaryWithContentsOfFile:filepath];
[NSData dataWithContentsOfFile:filepath];
[NSString stringWithContentsOfFile:filepath encoding:(NSUTF8StringEncoding) error:nil];
// 1.获得沙盒根路径 NSString *home = NSHomeDirectory();//不推荐 NSString *document1 = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0]; NSString *caches = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0]; NSString *tmp = NSTemporaryDirectory(); // 2.document路径 NSString *docPath = [home stringByAppendingPathComponent:@"Documents"]; // 3.新建数据 NSArray *data = @[@"zhangsan", @"lisi", @"wangwu"]; NSString *filepath = [docPath stringByAppendingPathComponent:@"data.plist"]; [data writeToFile:filepath atomically:YES]; NSString *string = @"1234123sdfsd"; //存储要进行转码 [string writeToFile:filepath atomically:YES encoding:NSUTF8StringEncoding error:nil];
读取数据:
// 4.读取数据 NSArray *data = [NSArray arrayWithContentsOfFile:filepath]; NSLog(@"%@", data); [NSDictionary dictionaryWithContentsOfFile:filepath]; [NSData dataWithContentsOfFile:filepath]; [NSString stringWithContentsOfFile:filepath encoding:(NSUTF8StringEncoding) error:nil];
0 0
- 数据存储之(二):基本数据的存储
- 基本的数据存储
- 数据存储(二)
- 数据存储(二)
- 数据存储之(二):数据库存储
- Android 数据存储(二)之SharedPreferences存储
- 数据存储之二 SharedPreferences
- android数据存储(二)之使用SDCard存储
- iphone数据存储之 Core Data的使用(二)
- android数据存储方式之二 文件存储:内部存储
- Android的数据存储方式(二)
- Android数据存储(二):SQLite存储
- Android数据存储(二)----- SharedPreferences存储
- Android 数据存储 (二)文件存储
- Android 数据存储(二)文件存储
- iOS数据存储(二)
- ios数据存储(二)
- Android数据存储(二)
- RxJava
- C++1-2
- JQ下拉框取text() val() index操作
- JAVA线程同步中的notify和wait()函数
- 组合数(DFS)
- 数据存储之(二):基本数据的存储
- 面试关于@property问题
- JavaScript——innerHTML作用
- c++第一次实验:循环2
- c++第一次实验--函数
- STM32 USB学习笔记9
- [区间DP]UVA 12960 Palindrome
- C++第一次实验
- iOS UIAlertController 使用介绍