首页 > 代码库 > Foundation 框架中NSString and NSMutableString的详解
Foundation 框架中NSString and NSMutableString的详解
NSString:不可变字符串
创建字符串的最简单的方式:
NSString *str = @"itcast"; // 这个创建的是OC字符串 oc中的字符串都是NSString类的对象
char *name = "itcast"; // 这个是c语言字符串
NSLog(@"我在%@上课",str); // %@是用来输出oc对象的
NSLog(@"%s",name); // %s是用来输出c语言字符串
使用oc字符串的好处:
以对象的形式操作字符串;
1 // 定义一个字符串2 NSString *str = @"jack";3 4 // 计算字符串中字符的个数并将结果输出5 NSLog(@"%ld",str.length);
字符串的创建:
第一种:快速创建
NSString *str = @"jack";
第二种:以格式化的方式创建
NSString *str = [[NSString alloc] initWithFormat:@"my age is %d", 20]; // 这个是使用对象方法
NSString *str = [NSString stringWithFormat:@"my age is %d", 20]; // 这个是使用类方法
oc字符串和c语言字符串之间的相互装换
1 // 这个是将一个c语言字符串转换位oc字符串 2 char *ch = "i love oc!"; 3 4 NSString *str1 = [NSString stringWithUTF8String:"i love oc!"]; 5 NSString *str2 = [NSString stringWithUTF8String:ch]; 6 NSLog(@"str1 = %@, str2 = %@", str1, str2); 7 8 // 这个是将oc字符串装换为c语言字符串 9 const char *newch1 = [str1 UTF8String];10 const char *newch2 = [str2 UTF8String];11 NSLog(@"newch1 = %s, newch2 = %s", newch1, newch2);
运算后的结果是:
2015-01-05 20:53:46.820 Foundation框架[444:303] str1 = i love oc!, str2 = i love oc!
2015-01-05 20:53:46.822 Foundation框架[444:303] newch1 = i love oc!, newch2 = i love oc!
Program ended with exit code: 0
从文件中读取字符串:
NSString *str = [NSString stringWithContentsOfFile:@"/Users/mac/Desktop/sb.txt" encoding:NSUTF8StringEncoding error:nil]; // 这个是一个类方法
stringWithContentsOfFile:后面传入的是一个绝对路径;
encoding:后面的参数是一种编码方式。当我们要读取的字符串中有中文的时候我们要使用的编码方式是:NSUTF8StringEncoding
error:nil 表示,如果没有找到文件,放回结果是空 null。
将字符串写入文件:
NSString *str = @"i love oc!";
[@"i love oc!" writeToFile:@"/Users/mac/Desktop/sb.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
[str writeToFile:@"/Users/mac/Desktop/sb.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
这两句的效果是一样的。
writeToFile:后面传入的是一个绝对路径
atomically:YES 表示只有文件创建成功的时候才写入文件
encoding:NSUTF8StringEncoding 当有中文的时候我们就使用这种编码方式
error:nil 错误的时候返回空
知识补充:
协议头:资源路径
URL:资源路径
file:// 这个是文件路径。这里写的时候是有三个///
ftp:// 这个是服务器路径。
读取字符串的万能方式:
Foundation 框架中NSString and NSMutableString的详解