NSFileManager fileExistsAtPath: &符号链接
在我的 ~/Library/Caches/ 目录中,我有一个到我的应用程序包的符号链接,以及一些到图像的符号链接(例如“big_picture.png”是到“small_picture.png”的符号链接)。当我尝试使用 NSFileManager 的 fileExistsAtPath:
方法检查符号链接是否存在时,它会返回 NO
,即使符号链接确实存在,并且它链接到存在的文件以及。
据我所知,苹果的文档声称我正在尝试做的事情应该有效。我做错了什么,还是这是一个错误?
In my ~/Library/Caches/ directory, I have a symbolic link to my app's bundle, and some symbolic links to images (e.g. "big_picture.png" is a symlink to "small_picture.png"). When I try to check if the symlinks exist, using the NSFileManager's fileExistsAtPath:
method, it returns NO
, even when the symlink does exist, and it links to a file that exists as well.
As far as I know, Apple's documentation claims that what I'm trying to do should work. Am I doing something wrong, or is this a bug?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
fileExistsAtPath 可能遵循符号链接。也许你可以尝试不同的方法 - 使用
attributesOfItemAtPath:error:
。如果文件存在,将返回一个字典,它使您能够检查文件类型。要执行后者,请在字典上调用fileType
并根据NSFileTypeSymbolicLink
检查它。fileExistsAtPath might follow the symlink. Maybe you can try a different method -- Use
attributesOfItemAtPath:error:
. A dictionary will be returned if the file exists, and it will give you the ability to check the file type. To do the latter, callfileType
on the dictionary and check it againstNSFileTypeSymbolicLink
.