Mar*_*ero 4 iphone sdk search document wildcard
我正在尝试编写一个程序来创建动态命名的.csv文件,这些文件需要在以后的运行日期检索或删除.我想要做的是这样的:
我想运行一个算法,可以找出是否存在这些类型的文件.例如,如果我动态地将文件命名为foobar ##.csv,其中##表示动态生成的数字并附加到文件名,我想查找是否存在任何foobar ##.csv文件,而不管使用的号码.通常我会使用这样的代码行:
NSString *dataFileName = [[self documentPath] stringByAppendingPathComponent:@"foobar01.csv"];
Run Code Online (Sandbox Code Playgroud)
现在我只使用一个遍历每个值的循环并在找到bool时跳过bool,但我知道这不是最佳实践,因为它限制了用户可以使用的可能的文件名.任何洞察我如何在这样的搜索上使用某种通配符将不胜感激.
另外,我想创建一个方法来删除程序找到的任何.csv文件,但我假设用于解决上述算法的方法也可以用于删除.
通配符匹配要使用通配符字符串进行匹配,查询可以使用like而不是比较运算符,并将"*"(匹配零个或多个字符)或"?"(恰好匹配1个字符)包含为通配符,如下所示:
NSString *match = @"imagexyz*.png";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF like %@", match];
NSArray *results = [directoryContents filteredArrayUsingPredicate:predicate];
Run Code Online (Sandbox Code Playgroud)
http://useyourloaf.com/blog/2010/7/27/filtering-arrays-with-nspredicate.html
| 归档时间: |
|
| 查看次数: |
3129 次 |
| 最近记录: |