如何在iOS

时间:2015-07-01 11:09:18

标签: ios objective-c file-rename

我正致力于将视频文件保存在iOS中应用程序的文档文件夹中。

如何以编程方式重命名某些文件

2 个答案:

答案 0 :(得分:12)

试试这段代码:

NSError * err = NULL;
NSFileManager * fm = [[NSFileManager alloc] init];
BOOL result = [fm moveItemAtPath:@"/tmp/test.tt" toPath:@"/tmp/dstpath.tt" error:&err];
if(!result)
    NSLog(@"Error: %@", err);

另外明智地使用此方法重命名文件

- (void)renameFileWithName:(NSString *)srcName toName:(NSString *)dstName
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *filePathSrc = [documentsDirectory stringByAppendingPathComponent:srcName];
    NSString *filePathDst = [documentsDirectory stringByAppendingPathComponent:dstName];
    NSFileManager *manager = [NSFileManager defaultManager];
    if ([manager fileExistsAtPath:filePathSrc]) {
        NSError *error = nil;
        [manager moveItemAtPath:filePathSrc toPath:filePathDst error:&error];
        if (error) {
            NSLog(@"There is an Error: %@", error);
        }
    } else {
        NSLog(@"File %@ doesn't exists", srcName);
    }
}

答案 1 :(得分:0)

没有用于重命名文件的Direct API。虽然当您将文件从一个位置移动到另一个位置时,如果目标路径中的该文件不存在,则iOS将以给定名称创建该文件。对于文件,您只需提供文件的新名称,如何显示/引用它。

you could check this answer. Good luck!