• 文件归档


    1.归档就是将我们平时使用的文件,变量以一定的格式写入文件中进行存储,等到需要的时候读出来就能还原成源对象的格式

    2.归档操作

       2.1.在import下面定义存放文件的路径:#define PATH @"/Users/xxxxx/Downloads/dir/PigOnHole.txt";

       2.2.将字典保存到文件中

    // 将字典保存到文件中
    NSDictionary *dict = [[[NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"two",@"2",@"three",@"3", nil] autorelease];
    
    // atomically表示是否原子操作
    // 读取文件的内容,生成一个字典
    [dict writeToFile:PATH atomically:YES];
    NSLog(@"%@",dict);
    

     2.3.将数组保存到文件中

    NSDictionary *array = [[[NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"two",@"2",@"three",@"3", nil] autorelease];
    [array writeToFile:PATH atomically:YES];
    NSLog(@"%@",array);
    

     2.4.同时将数组和字典归档到一个文件中去,需要使用NSKeyedArchiver

    NSDictionary *dict1 = [[[NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"two",@"2",@"three",@"3", nil] autorelease];
    NSArray *array1 = [[[NSArray alloc] initWithObjects:@"One",@"1",@"two",@"2",@"three",@"3", nil] autorelease];
    NSMutableData *data = [[NSMutableData alloc] init];
    NSKeyedArchiver * archiver = [[[NSKeyedArchiver alloc] initForWritingWithMutableData:data] autorelease];
    [archiver encodeObject:array1 forKey:@"array"];
    [archiver encodeObject:dict1 forKey:@"dict"];
    [archiver finishEncoding];
    [data writeToFile:PATH atomically:YES];
    

     2.5.读取已经归档的文件

    NSData *data1 = [[NSData alloc] initWithContentsOfFile:PATH];
    NSKeyedUnarchiver * unArchiver = [[[NSKeyedUnarchiver alloc] initForReadingWithData:data1] autorelease];
    NSArray * array2 = [unArchiver decodeObjectForKey:@"array"];
    NSDictionary * dict2 = [unArchiver decodeObjectForKey:@"dict"];
    NSLog(@"%@",array2);
    NSLog(@"%@",dict2);
    

      

  • 相关阅读:
    fpga的特殊引脚 说明
    STM32的命名规范和选型
    阻容降压原理和算法
    判断三极管工作在哪个区
    modelsim仿真中 do文件的写法技巧
    场和帧的 关系(转)
    基于DSP/ARM图像采集原理和器件选型(转)
    非专业程序员谈程序员修炼之路
    产生指定范围不重复的随机数,产生指定数组不重复的随机数
    解决git下载很慢的问题
  • 原文地址:https://www.cnblogs.com/zwhFighting/p/4553655.html
Copyright © 2020-2023  润新知