NSString学习笔记

来源:互联网 发布:js 计算商品选中数量 编辑:程序博客网 时间:2024/06/03 12:57

1.NSString 初始化
  初始化一个NSString类课直接进行赋值,例如 NSString *str = @"Hello World!,
可以使用已有的一个字符串初始化,列如 - (id)initWithString:(NSString *)aStrin;,

还可以使用格式化初始化方法,列如NSString *msg = [[NSString alloc]initWithFormat:@"%@,%d",name,age];,也可以使用C语言字符串来初始化一个字符串,列如 [NSString stringWithUTF8String:"c string!"];.下面代码展示了NSString的初始化过程.

//使用现有字符串初始化str = [NSString alloc]initWithString:str];NSLog(@"str = %@",str);str = [NSString initWithString:str];NSLog(@"str = %@",str);

//使用C语言字符串初始化str = [NSString stringWithUTF8String:"c string"];NSLog(@"str = %@",str);
//使用格式化字符串NSString *name = @"tom";int age = 30;NSString *msg = [[NSString alloc]initWithFormat:@"%@,@d",name,age];NSLog(@"msg = %@",msg);NSString *msg = [NSSting initWithFormat:@"%@,%d",name,age];NSLog(@"msg = %@",msg);

 2.求字符串长度,获取某个索引位置的字符.
//1.求字符串长度NSString *str = @"Hello World!";NSUInteger len = [str length];NSLog(@"%lu",len);//2.获取某个位置的字符char c = [str characterAtIndex:0];


3.取子字符串.
//1.根据1个索引截取字符串NSString *str = @"Hello World!";NSString *subString = [str substringFromIndex:6]; //从某个索引开始NSLog(@"%@",subString);NSString *subString = [str substringToIndex:6]; //到某个索引NSLog(@"%@",subString);//2.根据两个索引范围截取字符串NSRange range = NSMakeRange(2,3);subString = [str substringWithRange:range];NSLog(@"%@",subString);

4.NSData和字符串之间的转换.
NSString *str = @"Hello World!";NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];str = [[NSString alloc]initWithData: data encoding: NSUTF8StringEncoding];NSLog(@"%@",str);

5.字符串和数字类型的转换
NSString *str = @"123";int i = [str intValue]; // 将字符串str转换成整形idouble d = [str doubleValue];NSLog(@"%d,%lf",i,d);

6.字符串的大小写转换
NSString *str = @"Hello World!";str = [str uppercaseString]; // 将字符串转换为大写NSLog(@"%@",str);str = [str capitalizedString]; // 将字符串转换首字母为大写NSLog(@"%@",str);str = [str lowercaseString]; // 将字符串转换为小写NSLog(@"%@",str);

7.字符串的比较.
NSString *str1 = @"abcd";NSString *str2 = @"abce";NSComparisonResult result = [str1 compare:str2];if (result == NSOrderedAscending) {NSLog(@"str1 < str2");}else if(result == NSOrderedDescending){NSLog(@"str1 > str2");}else {NSLog(@"str1 == str2");}

8.读写文件
NSString *filePath = @"/Users/hongdeng/Desktop/test.text";NSString *content = @"file content";[content writeToFile:filePath atomically:YES encoding: NSUTF8StringEncoding error:nil];content = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];NSLog(@"str = %@",content);



1 0
原创粉丝点击