类目代码展示(增加NSString的类目)
2015-10-16 14:23
363 查看
<pre name="code" class="objc">//类目:增加NSString的类目,在.h文件操作
#import <Foundation/Foundation.h> //类目是对原有类的增添新的方法 @interface NSString (FilePath) //类目的声明方法 /* @interface +原有类(类目名字) @end */ /* 应用: 1:在类目中定义的方法会成为原始类的一部分,是对原有类的一个扩充,调用与其它方法相同。 2:在父类中添加类目,子类会继承该类目中的方法,但在子类中添加类目父类无法拥有这些方法。 3:作为子类的替换,可以通过类目向已有类中添加方法,与定义子类一样。 4:把类中的方法归类,可以更好地管理和维护类 */ //获取沙盒路径 加号方法 +(NSString *)getFilePath; //追加一个文件路径 +(NSString *)getFilePathWithString:(NSString *)aString; //判断文件是否存在 +(NSString *)getExistsFilePathWithString:(NSString *)aString; //减号方法 -(NSString *)getPath; @end
</pre><pre name="code" class="objc">
</pre><pre name="code" class="objc">//在.m文件中的操作
#import "NSString+FilePath.h" @implementation NSString (FilePath) //获取沙盒Documents路径 +(NSString *)getFilePath { NSString * filePath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]; return filePath; }+(NSString *)getFilePathWithString:(NSString *)aString{ NSString * filePath = [[self getFilePath] stringByAppendingPathComponent:aString]; return filePath;}+(NSString *)getExistsFilePathWithString:(NSString *)aString{ NSString * filePath = [self getFilePathWithString:aString]; if (![[NSFileManager defaultManager] fileExistsAtPath:filePath]) { if ([[NSFileManager defaultManager] createFileAtPath:filePathcontents:nil attributes:nil]) { NSLog(@"创建成功"); } else { NSLog(@"创建失败"); } } else { NSLog(@"文件存在"); } return filePath;}-(NSString *)getPath{ NSString * filePath = [NSString getFilePath]; filePath = [filePath stringByAppendingPathComponent:self]; return filePath;}@end
</pre><pre name="code" class="objc">
//在ViewController中实现方法(切记引入文件名)- (void)viewDidLoad{[super viewDidLoad];//获取沙盒路径NSString * filePath1 = [NSString getFilePath];NSLog(@"filePath1====%@",filePath1);//获取文件路径并把字符串存入到文件中NSString * filePath2 = [NSString getFilePathWithString:@"outMan.text"];NSString * name = @"张三";[name writeToFile:filePath2 atomically:YES encoding:NSUTF8StringEncoding error:nil];NSLog(@"filePath2====%@",filePath2);//判断文件是否存在NSString * filePath3 = [NSString getExistsFilePathWithString:@"nihao.plist"];NSLog(@"filePath3===%@",filePath3);//获取文件路径NSString * filePath4 = @"momoda.txt";filePath4 = [filePath4 getPath];NSString * name2 =@"今天天气不错";[name2 writeToFile:filePath4 atomically:YES encoding:NSUTF8StringEncoding error:nil];NSLog(@"filePath4===%@",filePath4);}
相关文章推荐
- 基于PHP实现假装商品限时抢购繁忙的效果
- C++ MD5加密函数
- List of raw FTP commands
- javac -encoding utf8 HelloWorld.java ,错误:非法字符:\65279
- Java was started but returned exit code=13
- vs/vc++中无法解析的外部符号
- java拆装箱(转)
- Java基础知识学习(五)
- C++操作一个Excel字体大小 边框 对齐方式等
- Windows窗口游戏编程模板
- 使用ISBN码通过豆瓣API获取图书信息(ThinkPHP)
- log4j 使用和配置
- php 魔术方法 构造析构
- spring mvc 的Controller类是单例?
- Java从入门到精通15-方向键控制小球实例
- C语言小问题集锦
- 第四章 python中的面向对象设计
- 爬爬爬之路:C语言(七) 结构体篇
- C++标准模板库中list大数据量情况下析构效率的研究
- Delphi事件列表赏析(38个事件,必须要对这些事件非常熟悉,才能如臂使指,才能正确发布到新控件!)