// 字符串的创建
NSString *str = @"jack";
// NSString *s1 = [[NSString alloc] initWithString:@"jack"]; 这种创建字符串方法已抛弃
NSString *s2 = [[NSString alloc] initWithFormat:@"age is %d", 10];
// C字符串 --> OC字符串
NSString *s3 = [[NSString alloc] initWithUTF8String:"jack"];
// OC字符串 --> C字符串
const char *cs = [str UTF8String];
NSLog(@"%@", str); // 输出OC字符串
NSLog(@"%s", cs); // 输出C字符串
// NSUTF8StringEncoding 用到中文字符可以用这种编码方式,访问文件内容
NSString *s4 = [[NSString alloc] initWithContentsOfFile:@"/Users/admin/Desktop/1.txt" encoding:NSUTF8StringEncoding error:nil];
// NSString *s5 = [[NSString alloc] initWithContentsOfFile:@"/Users/admin/Desktop/1.txt" usedEncoding: error:nil]; //未解之谜
// NSLog(@"\n%@", s4);
// NSURL 访问文件内容或互联网资源
// URL:资源路径
// 协议头://路径
// 本地文件 file://
// ftp文件 ftp://
// 网络资源 http://
NSURL *s5 = [[NSURL alloc] initWithString:@"file:///Users/admin/Desktop/1.txt"];
// 直接访问本地文件路径
NSURL *url = [NSURL fileURLWithPath:@"/Users/admin/Desktop/1.txt"];
// NSString调用url对象访问url路径下的文件内容
NSString *s6 = [[NSString alloc] initWithContentsOfFile:url encoding:NSUTF8StringEncoding error:nil];
// NSLog(@"%@", s6);
// NSURL调用URLWithString
NSURL *s7 = [NSURL URLWithString:@"jack"];
NSLog(@"%@", s7);
/*
一般都会有一个类方法跟对象方法配对
[NSURL URLWithString:<#(NSString *)#>];
[NSString stringWithFormat:@""];
[NSString stringWithContentsOfFile:<#(NSString *)#> encoding:<#(NSStringEncoding)#> error:<#(NSError *__autoreleasing *)#>];
*/
/*
NSString : 不可变字符串
NSMutableString : 可变字符串
*/
NSMutableString *s8 = [NSMutableString stringWithFormat:@"my age is %d", 10];
// 拼接内容到s8的后面
// appendString:方法拼接一个字符串
// appendFormat:方法可以拼接多个字符串
[s8 appendString:@" 11 12"];
[s8 appendFormat:@"123 ", @"3456"];
// 用NSRange取出字符串中某个字符的范围再删除此字符串
NSRange range = [s8 rangeOfString:@"is"];
[s8 deleteCharactersInRange:range];
// NSLog(@"%@", s8);
// NSString调用stringByAppendingString:方法拼接字符不影响源字符串的内容,在源字符串的基础上拼接字符串形成新的字符串对象
NSString *s9 = [NSString stringWithFormat:@"i love oc"];
NSString *s10 = [s9 stringByAppendingString:@" and c"];
NSLog(@"%@", s9);
NSLog(@"%@", s10);
// 字符串的写入
[@"jack\njack" writeToFile:@"/Users/admin/Desktop/1.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
NSString *s11 = [NSString stringWithContentsOfFile:@"/Users/admin/Desktop/1.txt" encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@", s11);
NSMutableString *s1 = [NSMutableString stringWithFormat:@"my age is 10"];
// 拼接内容到s1的后面
[s1 appendString:@" 11 12"];
// 获取is的范围
NSRange range = [s1 rangeOfString:@"is"];
// 把字符串中的"is"全部删除
[s1 deleteCharactersInRange:range];
NSString *s2 = [NSString stringWithFormat:@"age is 10"];
NSString *s3 = [s2 stringByAppendingString:@" 11 12"];
NSLog(@"s1=%@, s2=%@", s1, s2);