Foundation 框架之——NSString、NSMutableString

 

 

 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(@"%@\n%@",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:%@\nstr10:%@\nstr11:%@",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         
View Code

 

转载于:https://www.cnblogs.com/doublelongliu/p/4637104.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值