我在一个名为壁纸的文件夹中有许多jpg格式的图像。我正在尝试读取目录的内容,并使用以下代码将它们存储在数组中:
NSFileManager *manager = [NSFileManager defaultManager];
NSArray *fileList = [manager contentsOfDirectoryAtPath:@"/Wallpaper" error:NULL];
但它不起作用。我无法将它们带入阵列。有人能告诉我这个怎么了吗?
您需要指定目录的完整路径。我假设您的文件夹Wallpaper
在文档目录中。
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *extractDirPath = [documentsPath stringByAppendingString: @"/Wallpaper"];
NSArray *extractsList = [fileManager contentsOfDirectoryAtPath: extractDirPath error: nil];
您使用的是绝对路径"/Wallpaper",但我猜您的壁纸文件夹不在/?
NSArray *fileList = [manager contentsOfDirectoryAtPath:@"/Wallpaper" error:NULL];
试着这样做:
NSError *error = nil;
NSArray *fileList = [manager contentsOfDirectoryAtPath:@"/Wallpaper" error:&error];
NSLog(@"load wallpaper error: %@", error);
这将向您提供实际发生的错误。
试试这个:
NSFileManager *filemgr= [NSFileManager defaultManager];
NSArray *filelist = [filemgr contentsOfDirectoryAtPath:Pathwithfoldername error:nil];