如何获取文件夹中文件的数量? [复制]

Posted

技术标签:

【中文标题】如何获取文件夹中文件的数量? [复制]【英文标题】:How can i get the count of the files in a folder? [duplicate] 【发布时间】:2011-07-21 15:30:59 【问题描述】:

如何在 ios 上获取文件夹中的文件数?

【问题讨论】:

【参考方案1】:
NSFileManager *filemgr = [NSFileManager defaultManager];

NSArray *filelist= [filemgr directoryContentsAtPath: yourPath];

int count = [filelist count];

NSLog ("%i",count);

【讨论】:

directoryContentsAtPath: 已弃用。查看@bitmapdata.com 的回答【参考方案2】:

directoryContentsAtPath: 已弃用。

如果您想获取 Documents 文件夹的文件数。

试试这个。

NSFileManager *fm = [NSFileManager defaultManager];
NSArray *docPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSArray *filelist= [fm contentsOfDirectoryAtPath:[docPaths objectAtIndex:0] error:nil];
int filesCount = [filelist count];
NSLog(@"filesCount:%d", filesCount);

【讨论】:

这是递归计数吗? @Patrick 不,这不是递归计数。 谢谢!快速提问,是否有任何内置方法可以按文件类型进行过滤,或者我应该遍历并检查名称?【参考方案3】:

- (NSArray *)directoryContentsAtPath:(NSString *)path 已弃用。请改用- (NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error。这意味着 Matt S 的上述代码将变为:

NSFileManager * filemgr = [NSFileManager defaultManager];
NSArray * filelist = [filemgr directoryContentsAtPath:yourPath error:nil];
int count = [filelist count];
NSLog("%d", count);

【讨论】:

【参考方案4】:
NSArray* files = [[NSFileManager defaultManager] directoryContentsAtPath:DIRECTORY];
NSLog(@"%d",[files count]);

【讨论】:

以上是关于如何获取文件夹中文件的数量? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何获取csv文件中归档数量的不同字数

如果我在 PL/SQL 中有文件的路径,如何获取文件夹的数量?

delphi如何获取文件夹内的MP3文件数量

批量获取文件夹以及子文件夹下文件数量,输出到Excel表格?

如何获取存档中的文件列表? [复制]

如何从文件属性中获取详细信息? [复制]