#import <Foundation/Foundation.h>

int main(int argc,
const char * argv[]) {

#if

//    从面向对象的角度来分析这个问题

//    1.由于目的是扫描指定文件夹下的全部文件信息,所以须要一个文件管理者的对象

NSFileManager *fileManager =
nil;

fileManager = [NSFileManager defaultManager];
//得到文件管理者对象

//    2.须要知道怎样获取home文件夹

NSString *path = [@"~" stringByExpandingTildeInPath];

//    3.怎样遍历文件夹下的全部文件(构建文件枚举对象)

NSDirectoryEnumerator *dirEnum = [fileManager enumeratorAtPath:path];

//    4.得到文件夹下的文件后,
推断文件的后缀是不是.c文件

//    5.须要构建一个可变数组,用于存放查找到的.c文件。

假设是.c文件,就放到数组里

NSMutableArray *arrayFiles = [NSMutableArray arrayWithCapacity:];

#if

NSString *fileName = [dirEnum nextObject];

while (fileName !=
nil) {

if ([[fileName pathExtension] isEqualToString:@"c"])

{

[arrayFile addObject:fileName];

}

fileName = [dirEnum nextObject];

}

#endif

NSString *fileName =
nil;

while ((fileName = [dirEnum nextObject]) !=
nil)

{

if ([[fileName pathExtension] isEqualToString:@"c"])

{

[arrayFiles addObject:fileName];

}

}

//    6.遍历数组的全部元素。
然后将其打印到屏幕上

for (NSString *name
in arrayFiles) {

NSLog(@"%@",name);

}

#endif

NSFileManager *fileManager = [NSFileManager defaultManager];

NSString *home;

home = [@"~" stringByExpandingTildeInPath];

NSMutableArray *files = [NSMutableArray arrayWithCapacity:];

//    这里的高速枚举相当于

//    NSDirectoryEnumerator *dicEnumber = [fileManager enumeratorAtPath:home];

//    NSString *fileName = [dicEnumber nextObject];

for (NSString *fileName
in [fileManager enumeratorAtPath:home]) {

if ([[fileName pathExtension] isEqualToString:@"c"]) {

[files addObject:fileName];

}

}

for (NSString *name
in files) {

NSLog(@"%@",name);

}

;

}


OC便利方法的更多相关文章

  1. OC:方法

    三种可见度 1.@public 被public 修饰的变量可以在外部(再声明一个新的类,也能访问) 和 该类的内部(在该类的.m文件内部)被访问,这样就可以在 main 函数中访问 @public 一 ...

  2. WKWebView--JS调用OC的方法

    WKWebView---JS调用OC方法 一.使用的协议进行简单的介绍 1.在WKWebView中OC和JS交互也非常简单,WebKit的库中有个代理WKScriptMessageHandler就是专 ...

  3. oc 工厂方法

    通过上例看oc创建实例有点麻烦,oc里面可以创建工厂方法可以让这个操作更简单一些(其实就是c#或者java里面的静态方法). 新建一个“Cocoa Touch Class”文件,命名为People P ...

  4. oc 调用c语言方法和oc的方法调用

    //c语方的方法 void sayHello(){ printf("Hello OC"); } int main(int argc, char * argv[]) { sayHel ...

  5. 欧莱雅浅谈OC中方法调用的顺序中的Category

    OC特有的分类Category,依赖于类.它可以在不改变原来的类内容的基础上,为类增加一些方法.分类的使用注意: (1)分类只能增加方法,不能增加成员变量: (2)在分类方法的实现中可以访问原来类中的 ...

  6. OC中-方法到底是如何使用的?

    方法:方法是Objective-C独有的一种结构,只能在Objective-C中声明.定义和使用,C语言不能声明.定义和使用. 1.类方法以+号开头,对象方法以-号开头+ (void) init;  ...

  7. OC之方法的声明实现和调用

    1. 类是来描述一群具有相同特征和行为的事物的. 类还有行为. 类的声明 @interface 类名 : NSObject { 属性. } 方法的声明 @end 类的实现. @implementati ...

  8. oc底层方法调用流程

    1.对象方法保存到类对象里面,每个类对象中都有一个方法列表.类方法保存在元类中方法列表 a.通过isa指针去对应的类中查找: b.生成方法编号,根据方法编号查找对应的方法(找到只是最终实现地址,根据地 ...

  9. OC循环方法推荐-块循环遍历(比for循环好用)

    最近在看一本书<Effective OC 2.0>,今天看到有个tip是OC适中循环各自优劣性,作者最终推荐此块循环. 阅读时思考了下块循环是否方便实现内部循环终止外部循环的问题. 于是做 ...

随机推荐

  1. swift语言点评五-Function

    一.函数类型 Every function in Swift has a type, consisting of the function’s parameter types and return t ...

  2. servlet中Session的用法

    ## (1)什么是Session? 服务器端为了保存用户的状态而创建的一个特殊的对象(即session对象).          当浏览器第一次访问服务器时,服务器会创建session对象(该    ...

  3. 状压DP复习

    深感自己姿势水平之蒻……一直都不是很会状压DP,NOIP又特别喜欢考,就来复习一发…… 题目来源 Orz sqzmz T1 [BZOJ4197][NOI2015]寿司晚宴 (做过)质因数分解最大的质因 ...

  4. java zyUpload 实现多文件上传

    1.html部分 <form enctype="multipart/form-data"> <label>请选择文件</label> <i ...

  5. WPF Toolkit AutoCompleteBox 实体类绑定 关键字自定义关联搜索匹配

    原文:WPF Toolkit AutoCompleteBox 实体类绑定 关键字自定义关联搜索匹配 WPF Toolkit AutoCompleteBox 实体类绑定 关键字自定义关联搜索匹配 网上的 ...

  6. [terry笔记]data guard基础知识

    如下介绍了data guard的基础知识,整理自网络: Data Gurad 通过冗余数据来提供数据保护,Data Gurad 通过日志同步机制保证冗余数据和主数据之前的同步,这种同步可以是实时,延时 ...

  7. UVA 12003 Array Transformer

    Array Transformer Time Limit: 5000ms Memory Limit: 131072KB This problem will be judged on UVA. Orig ...

  8. 洛谷 P2758 编辑距离

    P2758 编辑距离 题目描述 设A和B是两个字符串.我们要用最少的字符操作次数,将字符串A转换为字符串B.这里所说的字符操作共有三种: 1.删除一个字符: 2.插入一个字符: 3.将一个字符改为另一 ...

  9. HDOJ 5087 Revenge of LIS II DP

    DP的时候记录下能否够从两个位置转移过来. ... Revenge of LIS II Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: ...

  10. lightoj--1155-- Power Transmission (最大流拆点)

    Power Transmission Time Limit: 2000MS   Memory Limit: 32768KB   64bit IO Format: %lld & %llu Sub ...