【发布时间】:2011-11-29 10:36:51
【问题描述】:
我刚刚研究了这段检查文件是否存在的代码:
NSString *path;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
path = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"SomeDirectory"];
path = [path stringByAppendingPathComponent:@"SomeFileName"];
if ([[NSFileManager defaultManager] fileExistsAtPath:path])
{
但我有点困惑。通过以下行:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
好的,我知道方法 NSSearchPathForDirectoriesInDomains 返回一个路径,具体取决于您传递给此方法的参数。但是这个用户(写代码的人)是在盲目地传递整个班级! (参考 NSDocumentDirectory、NSUserDOmainMask)。他唯一正确通过的是 BOOL YES。我检查了苹果文档,上面写着:
NSSearchPathForDirectoriesInDomains 创建目录搜索路径列表。
NSArray * NSSearchPathForDirectoriesInDomains (
NSSearchPathDirectory directory,
NSSearchPathDomainMask domainMask,
BOOL expandTilde
);
我在苹果文档中搜索了 NSSearchPathDirectory 和 NSSearchPathDomainMask,他们建议我必须传递一个数字
这表明需要将一个数字传递给方法?有人可以解释一下那条线吗?谢谢
【问题讨论】: