0

我正在尝试使用以下代码:

if(![fileManager fileExistsAtPath:mountPath isDirectory:&isDir])

但我得到“使用未声明的已识别 isDir”

#import <Foundation/Foundation.h>在我的头文件中使用过。

有什么帮助吗?

4

4 回答 4

3

你应该在那里传递 BOOL 变量isDir,你可以使用如下:

BOOL isDir; /* NO/YES */
if(![fileManager fileExistsAtPath:mountPath isDirectory:&isDir])
于 2013-05-17T11:34:39.470 回答
1

原因是你没有声明什么isDir变量。

至少不是在您的 if 语句可以看到它的地方。看看这个例子使用的方法

BOOL isDirectory;
if ([self fileExistsAtPath:@"/Some/Path/aFolder" isDirectory:&isDirectory] && isDirectory)
{
    // aFolder exists and is a directory...
}
于 2013-05-17T11:35:35.983 回答
0

isDir指的是什么?

该错误消息意味着您尚未定义变量。

于 2013-05-17T11:32:47.767 回答
0

似乎isDir没有声明(请参阅其他答案)。如果你不需要知道它是否真的是一个目录,你可以简单地使用

if(![fileManager fileExistsAtPath:mountPath isDirectory:NULL]) {
    // ...
}

// or even more simple

if(![fileManager fileExistsAtPath:mountPath]) {
    // ...
}

如需进一步参考,请参阅文档

于 2013-05-17T11:38:08.100 回答