目标c,检查文件存在于路径中

时间:2011-02-22 07:46:37

标签: iphone objective-c

我在iPhone项目中使用Objective-C创建了一个屏幕。在那里,有2个按钮(比如A和B)。单击按钮A,将在文件夹(例如INBOX)中创建一个xml文件。

我的问题是,我只有在文件夹INBOX中不存在时才需要创建文件。 我怎样才能做到这一点?任何人都可以告诉我语法吗?

3 个答案:

答案 0 :(得分:135)

请检查NSFileManager。

NSFileManager *fileManager = [NSFileManager defaultManager];

NSString *pathForFile;

if ([fileManager fileExistsAtPath:pathForFile]){ 

}

答案 1 :(得分:2)

试试这个:

- (BOOL)checkAndCopy {
    NSError **error;
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *path = [documentsDirectory stringByAppendingPathComponent:@"yourFile.xml"]; 

    NSFileManager *fileManager = [NSFileManager defaultManager];

    if (![fileManager fileExistsAtPath: path])
    {
        // this copy an existing xml (empty?) file from main bundle:
        // try else to create a new file

        NSString *bundle =  [[ NSBundle mainBundle] pathForResource:@"yourFile" ofType:@"xml"];
        [fileManager copyItemAtPath:bundle toPath:path error:error];
        return YES;
    }
    return NO;
}

答案 2 :(得分:1)

以前在SO上也有过类似的问题:

  1. This回答可能最适合您
  2. 链接到NSFileManagerAPI