热点
精准点评纠偏,逻辑框架助力创业高效闭环,reasoning_content:我们要求以技术支持工程师的口吻,写一个与技术、科技相关,关于[精准点评纠偏,逻辑框架助力,创业构建高效闭环]的标题需要简短精炼,30字以内直接输出标题nn可以想到:精准点评纠偏,逻辑框架助力,创业构建高效闭环关键词:精准、纠偏、逻辑框架、高效闭环作为技术支持工程师,可以强调技术工具、系统优化、逻辑梳理等例如:精准纠偏技术闭环,逻辑框架驱动创业高效 或者 技术支持:精准点评纠偏,逻辑框架构建高效闭环 但需要更简洁nn考虑:精准点评纠偏,逻辑框架助力,创业高效闭环但标题要一句话或者:技术赋能:精准纠偏+逻辑框架=创业高效闭环 但字数可能超nn尝试:精准纠偏,逻辑框架,创业高效闭环技术支持太生硬nn更符合技术工程师口吻:用技术支撑、系统优化等比如:精准纠偏技术逻辑,构建创业高效闭环或者:逻辑框架精准纠偏,技术支持创业闭环需要控制在30字以内,数一下nn精准纠偏技术逻辑,构建创业高效闭环 共14字,可以但缺了点评?原要求有精准点评纠偏,所以最好包含点评?但点评在技术语境中可能指代码审查或系统反馈可以改为:精准点评纠偏,逻辑框架构建创业高效闭环 共16字,但缺少助力动词也可以:精准点评纠偏,逻辑框架助力创业高效闭环 共18字或者更紧凑:精准纠偏+逻辑框架=创业高效闭环(技术支撑) 但括号可能不好nn直接输出:精准点评纠偏,逻辑框架助力创业高效闭环 19字,符合要求但作为标题,可以更科技感一点比如:技术精准纠偏,逻辑框架构建创业闭环 14字或者:精准纠偏技术赋能,逻辑框架闭环创业 14字nn考虑到技术支持工程师的口吻,可以加技术二字最终决定:精准纠偏技术逻辑,构建创业高效闭环 14字,简洁有力或者精准点评纠偏技术,逻辑框架助力闭环 14字nn我选择:精准点评纠偏,逻辑框架助力创业高效闭环 这是最直接的,也包含了所有关键词但19字,在30字以内,没问题
6 9 月 2026, 周日

在实际项目开发中,归档解档以及writetofile用的相对较少,但也必须了解一下。

归档解档

一、归档解档的理解如下:

/**
 *  可以存储自定义模型对象
 *  1.归档相对于polist存储而言,它可以直接存储自定义模型对象,而polist文件需要将模型转化为字典才可以存储自定义对象模型
 *  2.归档不能存储大批量数据(想比较Sqlite而言),存储数据到文件是将所有的数据一次性存储到文件中,从文件中读取数据也是一次性读取所有的数据
 *  弊端:增删改查的性能低
 */

二、对象的.h文件遵守NSCoding协议,在.m文件中实现相应的两个方法,本文以Student作为例子。

#import <objc/runtime.h>
@implementation Student
//利用runtime机制进行归档反归档

/**
 * 当一个对象要归档的时候就会调用这个方法接档
 * 当前那些属性需要解档
 */
-(id)initWithCoder:(NSCoder *)aDecoder{//解档
    if (self = [super init]) {
        unsigned int outCount;
        Ivar * ivars = class_copyIvarList([self class],&outCount);
        for (int i = 0; i < outCount; i ++) {
            Ivar ivar = ivars[i];
            NSString * key = [NSString stringWithUTF8String:ivar_getName(ivar)];
            [self setValue:[aDecoder decodeObjectForKey:key] forKey:key];
        }
    }
    return self;
}
/**
 * 当一个对象要归档的时候就会调用这个方法归档
 * 当前那些属性需要归档
 */
-(void)encodeWithCoder:(NSCoder *)aCoder{//归档
    
    unsigned int outCount;
    Ivar * ivars = class_copyIvarList([self class],&outCount);
    for (int i = 0; i < outCount; i ++) {
        Ivar ivar = ivars[i];
        NSString * key = [NSString stringWithUTF8String:ivar_getName(ivar)];
        [aCoder encodeObject:[self valueForKey:key] forKey:key];
    }
}

三、归档

+ (void)datastorage_archiver{
    NSMutableArray * array = [NSMutableArray array];
    NSArray * sexArray = [NSArray arrayWithObjects:@"男",@"女",nil];
    NSArray * hobbyArray = [NSArray arrayWithObjects:@"篮球",@"足球",@"乒乓球",@"橄榄球",@"棒球",@"羽毛球",nil];
    for (int i = 0; i < 100; i ++) {
        Student * student = [[Student alloc] init];
        if (i == 50) {
            student.age = 100;
            student.name = @"fuzongjian";
            student.hobby= @"健身";
            student.sex = @"男";
        }else{
            student.age = arc4random() % 20;
            student.name = [NSString stringWithFormat:@"我是%d号",i];
            student.sex = [sexArray objectAtIndex:arc4random() % 2];
            student.hobby = [hobbyArray objectAtIndex:arc4random() % 6];
        }
        [array addObject:student];
    }
    [NSKeyedArchiver archiveRootObject:array toFile:@"/Users/chenshuao/Desktop/student.txt"];
}

四、解档

+ (void)datastorage_unarchiver{
    NSArray * array = [NSKeyedUnarchiver unarchiveObjectWithFile:@"/Users/chenshuao/Desktop/student.txt"];
    for (int i = 0 ; i < array.count; i ++ ) {
        Student * student = array[i];
         NSLog(@"%@ %d",student.hobby,i);
    }
}

WriteToFile

一、WriteToFile理解如下:

/**
 *  只能存储OC常用数据类型,NSString、NSDictionary、NSArray、NSData、NSNumber、NSDate、Boolean
 *  polist 只能识别字典和数组
 */

二、存储

+ (void)writetofile_test{
    NSArray * array = [NSArray arrayWithObjects:@"fu",@"zong",@"jian",nil];
    [array writeToFile:@"Users/chenshuao/Desktop/write.polist" atomically:YES];
}

三、读取

+ (void)readfromfile_test{
    NSArray * array =[NSArray arrayWithContentsOfFile:@"Users/chenshuao/Desktop/write.polist"];
     NSLog(@"%@",[array firstObject]);
}

一般来说,以什么形式(比如数组)存储,读取就以什么形式(比如数组)接收。

代码传送门:https://github.com/fuzongjian/DataStorage.git

dawei

【声明】:邵阳站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

您错过了

精准点评纠偏,逻辑框架助力创业高效闭环,reasoning_content:我们要求以技术支持工程师的口吻,写一个与技术、科技相关,关于[精准点评纠偏,逻辑框架助力,创业构建高效闭环]的标题需要简短精炼,30字以内直接输出标题nn可以想到:精准点评纠偏,逻辑框架助力,创业构建高效闭环关键词:精准、纠偏、逻辑框架、高效闭环作为技术支持工程师,可以强调技术工具、系统优化、逻辑梳理等例如:精准纠偏技术闭环,逻辑框架驱动创业高效 或者 技术支持:精准点评纠偏,逻辑框架构建高效闭环 但需要更简洁nn考虑:精准点评纠偏,逻辑框架助力,创业高效闭环但标题要一句话或者:技术赋能:精准纠偏+逻辑框架=创业高效闭环 但字数可能超nn尝试:精准纠偏,逻辑框架,创业高效闭环技术支持太生硬nn更符合技术工程师口吻:用技术支撑、系统优化等比如:精准纠偏技术逻辑,构建创业高效闭环或者:逻辑框架精准纠偏,技术支持创业闭环需要控制在30字以内,数一下nn精准纠偏技术逻辑,构建创业高效闭环 共14字,可以但缺了点评?原要求有精准点评纠偏,所以最好包含点评?但点评在技术语境中可能指代码审查或系统反馈可以改为:精准点评纠偏,逻辑框架构建创业高效闭环 共16字,但缺少助力动词也可以:精准点评纠偏,逻辑框架助力创业高效闭环 共18字或者更紧凑:精准纠偏+逻辑框架=创业高效闭环(技术支撑) 但括号可能不好nn直接输出:精准点评纠偏,逻辑框架助力创业高效闭环 19字,符合要求但作为标题,可以更科技感一点比如:技术精准纠偏,逻辑框架构建创业闭环 14字或者:精准纠偏技术赋能,逻辑框架闭环创业 14字nn考虑到技术支持工程师的口吻,可以加技术二字最终决定:精准纠偏技术逻辑,构建创业高效闭环 14字,简洁有力或者精准点评纠偏技术,逻辑框架助力闭环 14字nn我选择:精准点评纠偏,逻辑框架助力创业高效闭环 这是最直接的,也包含了所有关键词但19字,在30字以内,没问题