我有一段代码据说可以返回一个bool值。我是一名新程序员,所以有人可以给我一些代码来确定路径中的文件是否存在?
NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *path = [docsDirectory stringByAppendingPathComponent:@"fileName.txt"]; //returns a bool
答案 0 :(得分:1)
Actualy stringByAppendingPathComponent:方法不返回(BOOL)它返回(NSString *)。
你可以通过查看它的签名来判断:
- (NSString *)stringByAppendingPathComponent:(NSString *)str;
如果它确实返回了一个bool(它没有),你所要做的只是:if (path) {//...}
如果文件存在,您实际想要测试的是:
NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *path = [docsDirectory stringByAppendingPathComponent:@"fileName.txt"];
if ([[NSFileManager defaultManager] fileExistsAtPath:documentsDirectory]) {
//File Exists So Code Goes Here
}
答案 1 :(得分:0)
如果变量包含布尔值,则可以使用:
进行测试if(var) {
// gets executed if var is true
}
了解conditional control structurs。
但stringByAppendingPathComponent
不会返回布尔值it returns a string。