浮点数核心数据的问题

时间:2011-02-18 07:09:16

标签: iphone ios core-data ios4 ipad

下面的代码很大程度上受到我在网上发现的一些例子的启发似乎工作得很好,核心数据实体称为“Contact”,而xcdatamodel中的属性名为“address”的属性为String。它可以毫无问题地保存我的数据。 现在我的问题是:我如何修改此代码?在xcdatamodel中将属性“address”的属性从String更改为Float后,为了使其工作。

CoreDataTestOneAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate]; 
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSManagedObject *newContact;
newContact = [NSEntityDescription insertNewObjectForEntityForName:@"Contacts" inManagedObjectContext:context];
[newContact setValue:address_InputField.text forKey:@"address"];
NSError *error;
[context save:&error];

2 个答案:

答案 0 :(得分:2)

要将浮点数存储在Core Data浮点属性中,请将其包装在NSNumber对象中,如下所示:

[newContact setValue:[NSNumber numberWithFloat:floatValue] forKey:@"address"];

答案 1 :(得分:0)

这是猜测,但我认为您需要将该浮动包装在NSNumber中。 numberWithFloat:

Creates and returns an NSNumber object containing a given value, treating it as a float.

+ (NSNumber *)numberWithFloat:(float)value