1

我在名为Wallpaper的文件夹中有许多 jpg 格式的图像。我正在尝试使用以下代码读取目录的内容并将它们存储在一个数组中:

NSFileManager *manager = [NSFileManager defaultManager];
NSArray *fileList = [manager contentsOfDirectoryAtPath:@"/Wallpaper" error:NULL];

但它不工作。我无法将它们提取到数组中。谁能告诉我这有什么问题?

4

3 回答 3

5

您需要指定目录的完整路径。我假设您的文件夹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];
于 2012-07-12T10:45:38.453 回答
0

您使用的是绝对路径“/Wallpaper”,但我猜您的墙纸文件夹不在 / 中?

NSArray *fileList = [manager contentsOfDirectoryAtPath:@"/Wallpaper" error:NULL];

并尝试这样:

NSError *error = nil;
NSArray *fileList = [manager contentsOfDirectoryAtPath:@"/Wallpaper" error:&error];
NSLog(@"load wallpaper error: %@", error);

这将为您提供发生的实际错误。

于 2012-07-12T10:46:34.120 回答
0

试试这个:

NSFileManager *filemgr= [NSFileManager defaultManager];

NSArray *filelist = [filemgr contentsOfDirectoryAtPath:Pathwithfoldername error:nil];
于 2012-07-12T10:49:53.847 回答