您的位置:首页 > 移动开发 > Objective-C

黑马程序员——Objective-C基础——NSString & NSMutableString

2015-03-15 14:34 645 查看


------Java培训、Android培训、iOS培训、.Net培训、期待与您交流!
-------

一、NSString

1> 表示字符串的类NSString

创建的类对象包含了指向超类的指针、类名和指向类方法的列表的指针。类对象还包含一个long的数据,为新创建的类对象指定大小。

字符串创建方式

/*
1.字符串的创建
*/
NSString *s1 = @"hello";

//NSString *s2 = [[NSString alloc] initWithString:@"world"];

NSString *s3 = [[NSString alloc] initWithFormat:@"age is %d",10];

//C字符串 --> OC字符串
NSString *s4 = [[NSString alloc]initWithUTF8String:"jake"];

//OC字符串 --> C字符串
const char *cs = [s4 UTF8String];

//NSUTF8StringEncoding:用到中文就可以用这种编码
NSString *s5 = [[NSString alloc] initWithContentsOfFile:@"/Users/Apple/Desktop/1.txt" encoding:NSUTF8StringEncoding error:nil];

// 协议头://路径
// file:
// ftp;
// http://weibo.com/a.png NSURL *url = [[NSString alloc]initWithString:@"files///Users/Apple/Desktop/1.txt"];
[NSURL URLWithString:<#(NSString *)#>];

NSString *s6 = [[NSString alloc]initWithContentsOfURL: url encoding:NSUTF8StringEncoding error:];

/*一般都会有一个类方法和对象方法配
[NSString stringWithFormat:@""];
[NSString stringWithContentsOfFile:<#(NSString *)#> encoding:<#(NSStringEncoding)#> error:<#(NSError *__autoreleasing *)#>]
[NSString stringWithContentsOfURL:<#(NSURL *)#> encoding:<#(NSStringEncoding)#> error:<#(NSError *__autoreleasing *)#>]
*/


字符串的导出

[@"Jake" writeToFile:@"/Users/Apple/Desktop/1.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];


二、NSMutableString

1> NSString是不可变的,NSMutableString是可变的。用方法stringWithCapacity:来创建。

2> 常用方法:

可以使用appendString:或appendFormat:来附加新字符串:

- (void)appendString:(NSString *)aString;


- (void)appendFormat:(NSString *)format,…;
可以使用deleteCharactersInRange:方法删除字符串中的字符:

- (void)deleteCharactersInRange:(NSRange)range;


例如,

NSMutableString *s1 = [NSMutableString stringWithFormat:@" my age is %d", 10];

//拼接内容到s1的后面
[s1 appendString:@"11 12"];

//获取is的范围
NSRange range = [s1 rangeOfString:@"is"];

[s1 deleteCharactersInRange:range];



------Java培训、Android培训、iOS培训、.Net培训、期待与您交流!
-------

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