0
我正在開發一個應用程序。其中我想找出文檔目錄中的文件夾數量,並在每個文件夾中查找XML文件。請告訴我如何找到文檔目錄中的文件夾信息。如何查找文檔目錄中的文件夾信息
我正在開發一個應用程序。其中我想找出文檔目錄中的文件夾數量,並在每個文件夾中查找XML文件。請告訴我如何找到文檔目錄中的文件夾信息。如何查找文檔目錄中的文件夾信息
如果我理解你正確,你想找到文件目錄中所有文件夾中的所有xml文件?
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
NSArray *contents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsDirectory
error:nil];
for (NSString *path in contents) {
BOOL isDir;
if ([[NSFileManager defaultManager] fileExistsAtPath:path
isDirectory:&isDir]
&& isDir) {
// directory in documents directory
NSArray *dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:path
error:nil];
for (NSString *dirContentsPath in dirContents) {
if ([[dirContentsPath pathExtension] isEqualToString:@"xml"]) {
NSLog(@"xml found: %@", dirContentsPath);
}
}
}
}
您可能想爲更深的目錄添加遞歸。
要獲取目錄列表使用以下代碼,有1個屬性isDirectory,它爲您提供文件夾/文件的真/假。
NSFileManager *fileManager = [NSFileManager defaultManager];
fileList = [[fileManager directoryContentsAtPath:PATH_TO_SEARCH] retain];
NSMutableArray *arrDirectory = [[NSMutableArray alloc] init];
for(NSString *file in fileList)
{
NSString *path = [PATH_TO_SEARCH stringByAppendingPathComponent:file];
BOOL isItDirectory = NO;
[fileManager fileExistsAtPath:path isDirectory:(&isItDirectory)];
if(isItDirectory)
[arrDirectory addObject:file];
}
您的數組將包含此處的所有目錄列表。您可以按照xml文件的相同模式。
希望這會有所幫助。