1 //字符串的创建
2 NSString *s1 = @"Rose";
3
4 // 作用相当于s1,基本不用
5 // 警告:Using 'initWithString:' with a literal is redundant
6 // 用“initWithString:“是多余的
7 NSString *s2 = [[NSString alloc] initWithString:@"Rose"];
8
9
10 NSString *s3 = [[NSString alloc]initWithFormat:@"age is %d",20];
11
12 // C字符串——>OC字符串
13 // 注意"jack"前不要加@否则报错Implicit conversion of an Objective-C pointer to 'const char *' is disallowed with ARC
14 // 隐式转换的objective - c指针到弧‘const char *’无效
15 NSString *s4 = [[NSString alloc] initWithUTF8String:"jack"];
16 // OC字符串——>c字符串
17 const char *cs = [s4 UTF8String];
18
19 // NSUTF8StringEncoding 用到中文就可以用这种编码
20 NSString *s5 = [[NSString alloc]initWithContentsOfFile:@"/Users/scjy/Desktop/作业/作业/图像面积/图像面积/main.m" encoding:NSUTF8StringEncoding error:nil];
21
22 // URL :资源路径
23 // 协议头://路径
24 // file://
25 // ftp://
26
27 NSURL *url = [[NSURL alloc] initWithString:@"file:///Users/scjy/Desktop/OC/作业/作业/图像面积/图像面积/main.m"];
28 NSString *s6 = [[NSString alloc]initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
29
30 NSLog(@"s6:%@",s6);
31
32 /*
33 一般都有一个类方法跟对象方法配对
34 [ NSURL URLWithString:<#(NSString *)#>];
35 [NSString stringWithFormat:<#(NSString *), ...#>];
36 [NSString stringWithContentsOfFile:<#(NSString *)#> encoding:<#(NSStringEncoding)#> error:<#(NSError *__autoreleasing *)#>];
37
38 */
atomically原子性参数为YES时文件不存在且写入失败是不创建文件
// 字符串的导出
[@"jadfjallf" writeToFile:@"/Users/scjy/Desktop/OC/t.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
NSString *str = @"sdfkafads";
NSURL *url = [NSURL fileURLWithPath:@"/Users/scjy/Desktop/OC/tr.txt"];
[str writeToFile:url atomically:YES encoding:NSUTF8StringEncoding error:nil];
1 NSMutableString *s1 = [NSMutableString stringWithFormat:@"my age is 10"];
2 // 拼接内容到s1的后面
3 [s1 appendString:@" 11 12"];
4
5 // 获取is的范围
6 NSRange range = [s1 rangeOfString:@"is"];
7 [s1 deleteCharactersInRange:range];
8
9 NSString *s2 = [NSString stringWithFormat:@"age is 10"];
10 // 把s2复制一份后和11 12 拼接返回给s3,实际上s2没有变化
11 NSString *s3 = [s2 stringByAppendingString:@" 11 12"];
12
13
14 NSLog(@"s1=%@, s2=%@", s1, s2);

1 //快速创建一个字符串常量 2 NSString *str01 = @"This is a string"; 3 NSLog(@"字符串str1:%@",str01); 4 5 //快速创建一个空字符串 6 // 使用对象实例创建 7 NSString *str02 = [[NSString alloc]init]; 8 // 使用类方法创建 9 NSString *str03 = [NSString string]; 10 // str04和str02、str03是不一样的,str04是指针为空 11 NSString *str04 = nil; 12 NSLog(@"str02:%@ str03:%@ str04:%@",str02,str03,str04); 13 14 // 根据已有的字符串创建新的(常量区)内容一样的话,地址也一样,即str5、str6的地址一样 15 // 使用实例对象方法创建 16 NSString *str05 = [[NSString alloc]initWithString:str01]; 17 // 使用类对象方法创建 18 NSString *str06 = [NSString stringWithString:str01]; 19 NSLog(@"str05:%@ str06:%@",str05,str06); 20 21 22 NSString *str1 = @"asddffg"; 23 // 创建新的字符串(堆区) 24 NSString *str2 = [[NSString alloc]initWithFormat:@"字符串%d",2]; 25 NSString *str3 = [NSString stringWithFormat:@"字符串%d",2]; 26 27 BOOL isEquale = [str2 isEqualTo:str3]; 28 if (isEquale) { 29 NSLog(@"str2 and str3 is same string"); 30 } 31 32 NSString *str4 = @"this is a string"; 33 NSLog(@"str4 length is %d",(int)str4.length); 34 35 NSLog(@"全部转换成大写%@",[str4 uppercaseString]); 36 NSLog(@"全部转换成小写%@",[str4 lowercaseString]); 37 NSLog(@"首字母大写%@",[str4 capitalizedString]); 38 39 NSString *str5 = @"3.1415926"; 40 double pi = [str5 doubleValue]; 41 NSLog(@"pi is %lf",pi); 42 43 NSString *str6 = @"[00:15]:我 [00:18]:想 [00:19]:大 [00:21]:声"; 44 NSCharacterSet *character = [NSCharacterSet characterSetWithCharactersInString:@"[]0123456789:"]; 45 NSArray *str8 = [str6 componentsSeparatedByCharactersInSet:character]; 46 NSArray *str7 = [str6 componentsSeparatedByString:@" "]; 47 NSLog(@"%@ %@",str7,str8); 48 49 // 从某处开始截取 50 NSString *str9 = [str4 substringFromIndex:2]; 51 // 根据自定义区域截取一段字符串 52 NSString *str10 = [str4 substringWithRange:NSMakeRange(2, 5)]; 53 // 从开始截取到某处 54 NSString *str11 = [str4 substringToIndex:2]; 55 NSLog(@"str9:%@ str10:%@ str11:%@",str9,str10,str11); 56 57 // 包含 58 NSString *str12 = @"string"; 59 NSRange range = [str4 rangeOfString:str12]; 60 NSLog(@"%@",NSStringFromRange(range)); 61 NSLog(@"%d",[str4 containsString:str12]); 62 // 判断开头 63 NSLog(@"%d",[str4 hasPrefix:@"this"]); 64 // 判断结尾 65 NSLog(@"%d",[str4 hasSuffix:@"string"]); 66 67 // BOOL bool = 0; 68 69 NSMutableString *mstr1 = [NSMutableString stringWithFormat:@"Hello China"]; 70 // 插入字符 71 [mstr1 insertString:@" Welcome" atIndex:5]; 72 // 字符串的的替换 73 [mstr1 replaceCharactersInRange:NSMakeRange(6, 7) withString:@"Good"]; 74 // 删除 75 [mstr1 deleteCharactersInRange:NSMakeRange(6, 4)]; 76 77 NSLog(@"%@",mstr1); 78