zoukankan      html  css  js  c++  java
  • 数据持久化-Plist文件写入

    数据持久化,常见4种:归档,plist文件,sqlite,coreData.今天复习的是plist文件读写.

    //
    //  ViewController.m
    //  Test_Plist
    //
    //  Created by lidongbo on 14/10/30.
    //  Copyright (c) 2014年 lidongbo. All rights reserved.
    //
    
    #import "ViewController.h"
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        
        /*
         读取plist文件的内容.
         */
        NSString * path = [[NSBundle mainBundle] pathForResource:@"Person" ofType:@"plist"];
        NSMutableDictionary * data = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
        NSLog(@"%@",data);
        
        /*
         获取Document文件夹中plist文件的路径
         */
        NSMutableArray * mArr = [[NSMutableArray alloc] initWithObjects:@"英语",@"数据",@"法语",@"日语",@"德语", nil];
        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
        NSString * plistPath = [paths objectAtIndex:0];
        NSLog(@"%@",plistPath);
        
    //    NSString * fileName = [plistPath stringByAppendingString:@"/Person.plist"];
        NSString * fileName = [plistPath stringByAppendingPathComponent:@"Person.plist"];
        
        /*
            赋值
         */
        [data setObject:mArr forKey:@"kemu"];
        [data setObject:@"14" forKey:@"age"];
        /*
         plist文件写入
         */
        [data writeToFile:fileName atomically:YES];
    
        NSMutableDictionary * data1 = [[NSMutableDictionary alloc] initWithContentsOfFile:fileName];
        NSLog(@"%@",data1);
        
        /*
         plist文件可以多次写入.
         */
        NSMutableArray * mmArr = [[NSMutableArray alloc] initWithObjects:@"1",@"2",@"3", nil];
        [data setObject:mmArr forKey:@"kemu"];
        
        [data writeToFile:fileName atomically:YES];
        
        NSMutableDictionary * data2 = [[NSMutableDictionary alloc] initWithContentsOfFile:fileName];
        NSLog(@"______%@",data2);
    
        
        
        
    }
    
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    @end
    
  • 相关阅读:
    sychronized面试问题浅析
    打造一款属于自己的web服务器——开篇
    JVM学习总结五——性能监控及故障处理工具
    【转】Git常用命令备忘
    HTTP上传文件探究
    JVM学习总结四——内存分配策略
    JVM学习总结三——垃圾回收器
    JVM学习总结二——垃圾回收算法
    Vue生命周期中mounted和created的区别
    spring org.springframework.web.bind.annotation 常用注解
  • 原文地址:https://www.cnblogs.com/xclidongbo/p/4062372.html
Copyright © 2011-2022 走看看