我正在寻找检查文档文件夹中是否存在所有文件的方法。 到目前为止,我只有一个文件可以在本文档中查看,并且使用此代码正常工作:
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES) objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"01.mp3"];
if([[NSFileManager defaultManager] fileExistsAtPath:path])
{
[progressIndicator setHidden:YES];
[downloadbutton setHidden:YES];
}
检查文档文件夹中是否存在01.mp3,02.mp3,03.mp3等多个文件的最佳方法是什么
问候
答案 0 :(得分:2)
如果且当且仅当allFilesExist
时,您需要使循环中不存在,然后setHidden为无效- (BOOL)filesExistInDocuments:(NSArray*)files
{
BOOL allFilesExist = YES;
for (NSString *currFile in files)
{
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES) objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:currFile];
NSLog(@"path: %@", path);
if(![[NSFileManager defaultManager] fileExistsAtPath:path])
{
NSLog(@"not exists!");
allFilesExist = NO;
break;
}
}
if (allFilesExist)
{
[progressIndicator setHidden:YES];
[downloadbutton setHidden:YES];
}
return allFilesExist;
}
答案 1 :(得分:0)
您可以尝试将一些迭代器附加到您的文件名中,如下所示:
for(int i = 0; i < yourFileCount; i++
{
NSString *fileName = [NSString stringWithFormat:@"0%i.mp3", i];
NSString *path = [documentsDirectory stringByAppendingPathComponent:fileName];
if([[NSFileManager defaultManager] fileExistsAtPath:path])
{
[progressIndicator setHidden:YES];
[downloadbutton setHidden:YES];
}
}