您的位置:首页 > 编程语言

类目代码展示(增加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);}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: