gpt4 book ai didi

iphone - 如何用字符串唯一标识nsmanagementobject?

转载 作者:行者123 更新时间:2023-12-03 19:32:17 28 4
gpt4 key购买 nike

我正在使用核心数据和区域监控。区分受监控区域的唯一方法是使用 NSString 作为标识符。我很想使用 NSManagedObjectID,但我无法让它工作。

我尝试过的:

NSURL *objURL = [managedObjectID URIRepresentation];
NSError *err;
NSString *identifier = [NSString stringWithContentsOfURL:myURL
encoding:NSASCIIStringEncoding
error:&err];

我得到的错误是:

The operation couldn’t be completed. (Cocoa error 256.)

有更好的方法吗?或者我做错了什么?

最佳答案

您不应该获取 NSManagedObjectID 的 URI内容stringWithContentsOfURL:encoding:error: 尝试加载 URI 指向的资源;它根据 URI 是 http 还是 file 等来使用适当的操作。但它不知道如何处理 NSManagedObjectID URI,无论如何,这都不是您想要做的。

相反,我猜你想做的是

 NSString*identifier=[objURL absoluteString];

这给出了 URL 的字符串表示形式。

我将添加 Marcus 的评论,以便每个人都会注意到:

Be aware that the objectID can and does change, especially when a migration occurs. Do not rely on that value to be consistent between one launch of the application and the next.

关于iphone - 如何用字符串唯一标识nsmanagementobject?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3519334/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com