大佬教程收集整理的这篇文章主要介绍了objective-c – 是否可以在iOS中对一个目录进行全局操作并将结果缓存在操作系统中?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
1-1-0.png 1-2-0.png 1-3-0.png 1-3-1.png 2-2-1.png 5-1-1.png 5-1-2.png 5-2-1.png 5-3-0.png 6-1-1.png ... 1501-5-2.png
我可能想让所有文件名匹配5 – * – 1.png,这会让我回到5-1-1.png和5-2-1.png.
加载整个目录列表然后在RAM中进行通配是非常简单的,但有没有一种方法可以在内置缓存的操作系统级别执行此操作,因此重复调用相同的glob会产生缓存(更快)的结果?
#include <glob.h> + (NSArray*) arrayWithFilesmatchingPattern: (NSString*) pattern inDirectory: (NSString*) directory { NSMutableArray* files = [NSMutableArray array]; glob_t gt; NSString* globPathComponent = [NSString StringWithFormat: @"/%@",pattern]; NSString* expandedDirectory = [directory StringByExpandingTildeInPath]; const char* fullPattern = [[expandedDirectory StringByAppendingPathComponent: globPathComponent] UTF8String]; if (glob(fullPattern,NULL,>) == 0) { int i; for (i=0; i<gt.gl_matchc; i++) { size_t len = strlen(gt.gl_pathv[i]); NSString* filename = [[NSFileManager defaultManager] StringWithFileSystemRepresentation: gt.gl_pathv[i] length: len]; [files addObject: filename]; } } globfree(>); return [NSArray arrayWithArray: files]; }
以上是大佬教程为你收集整理的objective-c – 是否可以在iOS中对一个目录进行全局操作并将结果缓存在操作系统中?全部内容,希望文章能够帮你解决objective-c – 是否可以在iOS中对一个目录进行全局操作并将结果缓存在操作系统中?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。