1

Wallpaperという名前のフォルダーに jpg 形式の画像がたくさんあります。次のコードを使用して、ディレクトリの内容を読み取り、配列に格納しようとしています:

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

しかし、それは機能していません。それらを配列にフェッチできません。誰がこれの何が問題なのか教えてもらえますか?

4

3 に答える 3

5

ディレクトリの完全なパスを指定する必要があります。あなたのフォルダWallpaperは Documents ディレクトリにあると思います。

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

これを試して:

NSFileManager *filemgr= [NSFileManager defaultManager];

NSArray *filelist = [filemgr contentsOfDirectoryAtPath:Pathwithfoldername error:nil];
于 2012-07-12T10:49:53.847 に答える
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 に答える