2012-01-30 7 views
6

最新のSDKとXCode 4.2でiPhoneとiPadアプリケーションを開発しています。001XXX.jpgで始まる名前のすべてのリソースを取得する

名前がで始まるすべてのリソースのパスを取得します。彼らの名前は001XXX.jpgです(XXXは不明です)。私はどれくらいのリソースがあるか分かりません。私はそれぞれのパスでNSArrayのを取得したい

001001.jpg
001002.jpg
001003.jpg

例えば、私はアプリで、次のファイルをバンドルしていますこの3つのファイルのうち

答えて

3

あなたは二つのステップでそれを行うことができます。

  • は、すべてのPNGファイルを取得するためにNSBundle pathsForResourcesOfType:inDirectory:メソッドを使用します。
  • NSArray filteredArrayUsingPredicate:メソッドを使用して、必要なパターンを除外します。

    NSArray *files = [[NSBundle mainBundle] pathsForResourcesOfType:@"png" inDirectory:@"."]; 
    NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF BEGINSWITH[c] '001'"]; 
    NSArray *images = [files filteredArrayUsingPredicate:pred]; 
    

コードは(テストしていない)のようになります。

0

希望のコードはあなたに役立ちます。

ここ
NSArray *dirContents = [[NSFileManager defaultManager] directoryContentsAtPath:documentDirectory]; 
for (NSString *tString in dirContents) 
{ 
    if ([tString hasPrefix:@"001"] && [tString hasSuffix:@".jpg"]) 
    { 

        // do stuff 

    } 
} 

ドキュメントディレクトリのパスを表しますdocumentDirectory。 ファイルがドキュメントディレクトリ以外の場所にある場合は、明らかにそのパスを置くことができます。

関連する問題