You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Appkit Cocoa:NSCoding解码报错NSCocoaErrorDomain 4864问题排查

问题原因与解决方案

错误码NSCocoaErrorDomain - code: 4864表示解档时类验证不通过。你使用unarchivedObjectOfClass:[NSArray class]解档时,仅告知系统允许解档NSArray类,但数组内的Grade对象未被加入允许的类列表,导致系统拒绝完成解档操作。

修复方法

改用unarchivedObjectOfClasses:fromData:error:方法,传入包含NSArray和Grade的类集合,明确告知系统这两类均允许解档:

NSError *error = nil;
NSSet *allowedClasses = [NSSet setWithObjects:[NSArray class], [Grade class], nil];
NSArray *arrayFromData = [NSKeyedUnarchiver unarchivedObjectOfClasses:allowedClasses fromData:data error:&error];

额外注意点

你归档代码里的数组类型声明写的是NSArray<Grades*>,但你的类名实际是Grade,这是笔误,建议修正为NSArray<Grade*>以避免类型警告。

内容的提问来源于stack exchange,提问作者IRP_HANDLER

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 17:02:33