解析NSURL中的所有符号链接

时间:2013-02-01 14:59:30

标签: cocoa path nsurl symlink symlink-traversal

我正在写一小段代码,在其中我应该检测NSURL是否包含符号链接(即,还应检测除最后一个之外的符号文件组件)。为此,我将NSURLNSURL返回的-URLByResolvingSymlinksInPath对峙。问题是这个方法似乎以小写形式返回所有符号链接。有没有其他方法可以解决这个问题?

2 个答案:

答案 0 :(得分:4)

您可以手动遍历符号链接:

  1. 使用-[NSFileManager attributesOfItemAtPath:error:]检测符号链接,并在密钥NSFileType中搜索NSFileTypeSymbolicLink值。

  2. 使用-[NSFileManager destinationOfSymbolicLinkAtPath:error:]获取目标路径并附加它们。

  3. 对每个路径组件重复此操作。

答案 1 :(得分:0)

要么我确实做错了,要么使用最新的Mountain Lion更新修复了这个错误。现在所有符号链接都已正确解析。