Objective c 将自定义对象强制转换为NSData以与NSFileManager一起使用
我有一个我在目标c中写的对象。它非常简单,只存储了一些值 我的目标Objective c 将自定义对象强制转换为NSData以与NSFileManager一起使用,objective-c,casting,nsfilemanager,Objective C,Casting,Nsfilemanager,我有一个我在目标c中写的对象。它非常简单,只存储了一些值 我的目标 我想使用NSFileManager将此对象存储到磁盘。我相信NSFileManager在使用createFileAtPath时会将NSData的实例作为内容参数。如何将此对象强制转换为使用createFileAtPath的适当类型?所有对象都来自NSObject。在这里,我们可以将从NSObject派生的自定义对象转换为NSData 您需要在自定义类上实现encodeWithCoder:并使用传入的NSCoder序列化其所有属性
我想使用NSFileManager将此对象存储到磁盘。我相信NSFileManager在使用createFileAtPath时会将NSData的实例作为内容参数。如何将此对象强制转换为使用createFileAtPath的适当类型?所有对象都来自NSObject。在这里,我们可以将从NSObject派生的自定义对象转换为NSData
您需要在自定义类上实现encodeWithCoder:并使用传入的NSCoder序列化其所有属性。如果其属性包含更多自定义类,则它们也需要encodeWithCoder:实现。所有对象都来自NSObject。在这里,我们可以将从NSObject派生的自定义对象转换为NSData 您需要在自定义类上实现encodeWithCoder:并使用传入的NSCoder序列化其所有属性。如果它的属性包含更多的自定义类,它们也需要encodeWithCoder:实现
@interface MyObject : NSObject {
NSString *filename;
NSMutableData *somedata;
}
@property(nonatomic,copy)NSString *filename;
@property(nonatomic,retain)NSMutableData *somedata;
@end