标签:
文件读取的类型: (字符串, 数组, 字典, 二进制 --- NSData)
1.写入文件.
writeToFile: atomically: -- 针对于数组, 二进制数组
writeToFile: atomically: encoding: error: -- 针对于字符串
2.从文件中读取
[类名 类名stringWithContentsOfFile:] -- 针对于数组, 子字典 二进制数据
[类名 类名WithContentsOfFile: encoding: error:] -- 针对于 字符串
3.VVVIP
对于数组, 字典大容器deng, 想要数显文件读写, 必须要保证荣放弃中的元素也必须是 数组, 字符串, 字典, 二进制数据等数据类型之一;
//获取文件路径的方法
- (NSString *)filePath {
//1.获取Documets 文件夹路径(存放持久保存的数据)
//参数1 查找文件路径
//参数2 在那个域中查找
//参数3 是否显示详细路径
NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
//拼接 文件路径
NSString *filePath = [documentPath stringByAppendingPathComponent:@"NSDictionary.txt"];
NSLog(@"%@", filePath);
return filePath;
}
//一.字符串写入文件
//atomically:YES 保证文件的完整性(安全)
//encoding: 编码; NSUTF8StringEncoding 国际标准
NSError *error= nil;
//先读取源文件中的内容
NSString *oldFile = [NSString stringWithContentsOfFile:[self filePath] encoding:NSUTF8StringEncoding error:nil];
//将原有数据域新数据拼接在一起
NSString *newFile = [oldFile stringByAppendingFormat:@"%@",self.firstTexField.text];
//判断 之前是否能读取oldFile 文件,
if (!newFile) {
newFile = self.firstTexField.text;
}
BOOL isSuccess = [newFile writeToFile:[self filePath] atomically:YES encoding:NSUTF8StringEncoding error:&error];
if (isSuccess) {
NSLog(@"YES");
} else {
NSLog(@"NO");
}
//2.数组写入文件
NSArray *dataArray = @[self.firstTexField.text, self.secondTextField.text];
[dataArray writeToFile:[self filePath] atomically:YES];
//3.字典
NSDictionary *dic = @{@"tf1":self.firstTexField.text, @"tf2":self.secondTextField.text};
[dic writeToFile:[self filePath] atomically:YES];
// 二. 文件读取
//字符串从文件中读取
self.secondTextField.text = [NSString stringWithContentsOfFile:[self filePath] encoding:NSUTF8StringEncoding error:nil];
NSArray *dataArr = [NSArray arrayWithContentsOfFile:[self filePath]];
self.firstTexField.text = [dataArr lastObject];
self.secondTextField.text = [dataArr firstObject];
//字典
NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:[self filePath]];
self.firstTexField.text = [dic objectForKey:@"tf2"];
self.secondTextField.text = dic[@"tf1"];
标签:
原文地址:http://www.cnblogs.com/tapple/p/4878466.html