Macos 确定OSX沙盒下符号链接指向的文件的大小
要确定文件的大小,我始终使用:Macos 确定OSX沙盒下符号链接指向的文件的大小,macos,cocoa,sandbox,nsfilemanager,Macos,Cocoa,Sandbox,Nsfilemanager,要确定文件的大小,我始终使用: NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:path error:nil]; unsigned long long size = [fileAttributes fileSize]; 但是,方法attributesFiteMatPath:error:不遍历符号链接。苹果建议: 如果路径上的项是符号链接,即属性字典中的NSFileType
NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:path error:nil];
unsigned long long size = [fileAttributes fileSize];
但是,方法attributesFiteMatPath:error:
不遍历符号链接。苹果建议:
如果路径上的项是符号链接,即属性字典中的NSFileType
键的值是nsfiletypesymbolicink
-可以使用destinationOfSymbolicLinkAtPath:error:
方法检索链接指向的项的路径
如果沙盒不阻止我访问指向的文件,这将非常好:
拒绝文件读取xattr/path/to/the/original/file
因此,我的问题是:如何获得OSX沙盒下符号链接指向的文件大小?这似乎是一个bug。如果用户专门将符号链接拖到应用程序中,这是用户意图的明确声明,您希望能够访问符号链接和目标。事实上,我可以访问原始文件并读取其内容,但不能读取其属性。所以我提交了错误报告#13143810
编辑:我的错误报告已作为#12991152的副本关闭,它实际上是“打开的”。是符号链接指向沙箱外部的文件吗?