objective-c - NSDocument 唯一标识符

标签 objective-c macos unique uniqueidentifier nsdocument

问: 是否有任何方法可以获取在应用重启期间持续存在的 Document-based™ 应用中唯一的 NSDocument 标识符



注意 1:肯定应该有某种 id 不只是 fileURL ,但还有其他原因,因为应用程序可以很好地处理自动保存的甚至尚未保存的文档。

注意 2:出于某些原因,我不想生成此 ID 并将其保存到文档的内容文件中。

最佳答案

虽然我没有尝试过,但我认为扩展属性可以完成这项工作:

uuid_t uuid;
[[NSUUID new] getUUIDBytes:uuid];

int result = setxattr( path, "com.yourcompany.yourapp.yourattr", &uuid, sizeof(uuid), 0, 0);

由于扩展属性既不是文件本身的一部分,也不是所有文件系统的标准,因此当使用不支持此类属性的文件系统将文件复制到存储设备上时,它们可能会丢失。

关于objective-c - NSDocument 唯一标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41710777/

相关文章:

ios - [NSArray array] 和 [[NSArray alloc] init] 有什么区别

objective-c - objective-c : can't understand how a #define macro is expanded

objective-c - 模糊MAAttachedWindow背后的背景?

r - 使用 data.table 选择非唯一行

Postgresql SELECT 随机且具有唯一值

node.js - Mongoose - 独立唯一约束

ios - 如何通过名称获取 "extern const int"值

ios - 相机应用程序,如屏幕旋转和导航

macos - node.js 未通过 MacOS 终端停止/退出

macos - 有没有办法安装/模拟旧版本的 Safari? (即 8)