OC便利方法
#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便利方法的更多相关文章
- OC:方法
三种可见度 1.@public 被public 修饰的变量可以在外部(再声明一个新的类,也能访问) 和 该类的内部(在该类的.m文件内部)被访问,这样就可以在 main 函数中访问 @public 一 ...
- WKWebView--JS调用OC的方法
WKWebView---JS调用OC方法 一.使用的协议进行简单的介绍 1.在WKWebView中OC和JS交互也非常简单,WebKit的库中有个代理WKScriptMessageHandler就是专 ...
- oc 工厂方法
通过上例看oc创建实例有点麻烦,oc里面可以创建工厂方法可以让这个操作更简单一些(其实就是c#或者java里面的静态方法). 新建一个“Cocoa Touch Class”文件,命名为People P ...
- oc 调用c语言方法和oc的方法调用
//c语方的方法 void sayHello(){ printf("Hello OC"); } int main(int argc, char * argv[]) { sayHel ...
- 欧莱雅浅谈OC中方法调用的顺序中的Category
OC特有的分类Category,依赖于类.它可以在不改变原来的类内容的基础上,为类增加一些方法.分类的使用注意: (1)分类只能增加方法,不能增加成员变量: (2)在分类方法的实现中可以访问原来类中的 ...
- OC中-方法到底是如何使用的?
方法:方法是Objective-C独有的一种结构,只能在Objective-C中声明.定义和使用,C语言不能声明.定义和使用. 1.类方法以+号开头,对象方法以-号开头+ (void) init; ...
- OC之方法的声明实现和调用
1. 类是来描述一群具有相同特征和行为的事物的. 类还有行为. 类的声明 @interface 类名 : NSObject { 属性. } 方法的声明 @end 类的实现. @implementati ...
- oc底层方法调用流程
1.对象方法保存到类对象里面,每个类对象中都有一个方法列表.类方法保存在元类中方法列表 a.通过isa指针去对应的类中查找: b.生成方法编号,根据方法编号查找对应的方法(找到只是最终实现地址,根据地 ...
- OC循环方法推荐-块循环遍历(比for循环好用)
最近在看一本书<Effective OC 2.0>,今天看到有个tip是OC适中循环各自优劣性,作者最终推荐此块循环. 阅读时思考了下块循环是否方便实现内部循环终止外部循环的问题. 于是做 ...
随机推荐
- Rx = Observables + LINQ + Schedulers
The Reactive Extensions (Rx) is a library for composing asynchronous and event-based programs using ...
- swfit的特点
swfit的特点: 1.swift句尾不需要分号,除非你想在一行中写三行代码就加分号隔开. 2.swift不要写main函数,程序默认从上往下执行 3.swift不分.h和.m文件,一个类只有.swi ...
- ActiveMQ学习笔记(2)----JMS的基本概念和模型
1. JMS 的基本概念 1. JMS是什么? JMS Java Message Service,Java消息服务,是Java EE中的一种技术. 2. JMS规范 JMS定义了Java中访问消息中间 ...
- moment.js获取本周本月本年的开始日期和结束日期
//获取本日 const startDate = moment().format('YYYY-MM-DD'); const startDate = moment().format('YYYY-MM-D ...
- NodeJS学习笔记 (5)网络服务-http-req(ok)
原文:https://github.com/chyingp/nodejs-learning-guide 自己敲代码: 概览 本文的重点会放在req这个对象上.前面已经提到,它其实是http.Incom ...
- 【问题】解决python3不支持mysqldb
Django框架使用的还是python2.x的MySQLdb,而python3.x使用的是pymysql,centos7上默认安装的python2.7,自己安装了python3.6的版本,在运行dja ...
- const int *a与int *const a,const int *const a的区别
来源:https://blog.csdn.net/zhangheng837964767/article/details/33783511 关键问题点:const 属于修饰符 ,关键是看const 修饰 ...
- UVa 10954 Add All 贪心
贪心 每一次取最小的两个数,注意相加的数也要算' #include<cstring> #include<iostream> #include<cstdio> # ...
- 【CTO辩论会】移动开发人员忠于技术or 背离技术
第一期CTO辩论会结束后,大家在微信群中讨论,学什么编程语言好.有位官人直呼"劳力者治于人,苦差,不学也罢". 在IT.科技变革世界的今天,移动开发人员成为一个很时髦的工种. 就连 ...
- 提高FPGA速度的quartus编译选项
Turning on some optimizations in Quartus II may help increase it. Here are some you may want to try: ...