iOS 数据存储:Plist

    xiaoxiao2025-09-01  153

    前言

    plist文件是iOS数据存储方法的一种,主要用于保存少量的数据在本地。其本质就是文件的读写,获取一个plist的文件路径,以键值对的方式把数据写到plist文件中。plist文件一般会保存在沙盒中,当该应用被删除时,plist文件也会被一同删除。

    #import <UIKit/UIKit.h> @interface LoadViewController : UIViewController @property (weak, nonatomic) IBOutlet UITextField *textAccount; @property (weak, nonatomic) IBOutlet UITextField *textPassword; @end //把账号和密码写入plist - (void)writeToPlist { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString * path = [paths objectAtIndex:0]; NSString *Files = @"Account"; NSFileManager * fm = [NSFileManager defaultManager]; NSString *filePath =[NSString stringWithFormat:@"%@/%@",path,Files]; if (![fm fileExistsAtPath:filePath]) { [fm createDirectoryAtPath:filePath withIntermediateDirectories:YES attributes:nil error:nil]; } NSString * docDir = [filePath stringByAppendingPathComponent:@"account.plist"]; NSMutableDictionary * loaddic = [NSMutableDictionary dictionaryWithObjectsAndKeys:self.textAccount.text,@"name",self.textPassword.text,@"password", nil]; [loaddic writeToFile:docDir atomically:YES]; } //从plist文件中读取账号和密码 - (NSMutableDictionary *)readFromPlist { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString * path = [paths objectAtIndex:0]; NSString *Files = @"Account"; NSFileManager * fm = [NSFileManager defaultManager]; NSString *filePath =[NSString stringWithFormat:@"%@/%@",path,Files]; if (![fm fileExistsAtPath:filePath]) { [fm createDirectoryAtPath:filePath withIntermediateDirectories:YES attributes:nil error:nil]; } NSString * docDir = [filePath stringByAppendingPathComponent:@"account.plist"]; NSMutableDictionary *loaddic = [NSMutableDictionary dictionaryWithContentsOfFile:docDir]; NSString *name =[loaddic objectForKey:@"name"]; NSString *password =[loaddic objectForKey:@"password"]; self.textAccount.text = name; self.textPassword.text = password; return loaddic; }
    转载请注明原文地址: https://ju.6miu.com/read-1302220.html
    最新回复(0)