来自服务器的字符串语言是 赫伯当我直接向我的 View 显示该数据时,这些字符是正确的,但是下次当我尝试从数据库中获取它时“ ????”而不是正确的字符!
//这是我将显示名称的联系人保存到数据库的地方//
-(BOOL)addContact:(ALContact *)userContact {
ALDBHandler * dbHandler = [ALDBHandler sharedInstance];
DB_CONTACT* existingContact = [self getContactByKey:@"userId" value:[userContact userId]];
if (existingContact) {
return NO;
}
BOOL result = NO;
DB_CONTACT * contact = [NSEntityDescription insertNewObjectForEntityForName:@"DB_CONTACT" inManagedObjectContext:dbHandler.managedObjectContext];
contact.displayName = userContact.displayName;
NSError *error = nil;
result = [dbHandler.managedObjectContext save:&error];
if (!result) {
NSLog(@"addContact DB ERROR :%@",error);
}
return result;
}
最佳答案
很难准确判断哪里出了问题(我们可以在评论中反复讨论很长时间),但答案会是这样的:
作为一个实验,我使用 Core Data 使用“Master-Detail Application”模板创建了一个新的 Xcode 项目。然后我向默认的“事件”实体添加了一个名为“名称”的字段,并修改了 UI 以显示该字符串。
然后我将您的字符串分配为“名称”的值:
在创建几个实例、退出并重新启动应用程序后,我可以验证字符串是否已正确保存、完整检索并正确显示在 UI 中:
因此,停止查看您的 Core Data 代码并开始查看处理此字符串的每一步。
关于ios - 如何在核心数据中保存非英语语言/特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38203399/