• Objective--C之NSString常用方法


      1 #import <Foundation/Foundation.h>
      2 
      3 int main(int argc, const char * argv[])
      4 {
      5     @autoreleasepool
      6     {
      7 #pragma mark - NSString
      8         char *s = "Hello Objective-C";//C语言的字符串格式
      9         NSString *str = @"Hello";
     10         //OC、C字符串的转换:C-->OC
     11         NSString *str1 = [NSString stringWithUTF8String:s];//UTF8是一种编码格式
     12         NSLog(@"str1 = %@", str1);
     13         //OC-->C
     14         NSLog(@"str2 = %s", [str UTF8String]);
     15         
     16         //创建字符串
     17         NSString *str3 = @"IOS";
     18         NSString *str4 = [[NSString alloc] init];
     19         str4 = @"IOS";
     20         // 格式化字符串
     21         int a = 10;
     22         int b = 20;
     23         NSString *str5 = [NSString stringWithFormat:@"a = %d b = %d", a, b];
     24         NSLog(@"str5 = %@", str5);
     25         //拼接字符串
     26         NSString *str6 = [[str5 stringByAppendingString:@" and "] stringByAppendingString:str3];
     27         NSLog(@"str6 = %@", str6);
     28         //大小写转换
     29         //转换小写
     30         NSString *str7 = @"aBcdEFG";
     31         NSString *str8 = [str7 lowercaseString];
     32         NSLog(@"str8 = %@", str8);
     33         //转换大写
     34         NSString *str9 = [str7 uppercaseString];
     35         NSLog(@"str9 = %@", str9);
     36         
     37         //前缀和后缀的判断
     38         NSString *str10 = @"www.songlei.com";
     39         //判断前缀
     40         BOOL hasPrefix = [str10 hasPrefix:@"www."];
     41         if (hasPrefix)
     42         {
     43             NSLog(@"有对应前缀");
     44         }
     45         else
     46         {
     47             NSLog(@"没有对应前缀");
     48         }
     49         //判断后缀
     50         BOOL hasSuffix = [str10 hasSuffix:@".com"];
     51         if (hasSuffix)
     52         {
     53             NSLog(@"有对应后缀");
     54         }
     55         else
     56         {
     57             NSLog(@"没有对应后缀");
     58         }
     59         
     60         //判断两个字符串是否相同
     61         NSString *str11 = @"Hello";
     62         NSString *str12 = @"Hello ";
     63         if ([str11 isEqualToString:str12])
     64         {
     65             NSLog(@"两个字符串一致");
     66         }
     67         else
     68         {
     69             NSLog(@"两个字符串不一致");
     70         }
     71         
     72         //***比较字符串***
     73 //        NSComparisonResult
     74         
     75         //分割//按照指定字符分割字符串
     76         NSString *str13 = @"a, b, c, d, e, f";
     77         NSArray *strArray = [str13 componentsSeparatedByString:@", "];
     78         for (NSString *str in strArray)
     79         {
     80             NSLog(@"str = %@", str);
     81         }
     82         //按照指定范围分割字符串
     83         NSRange range = NSMakeRange(3, 9);
     84         NSString *str14 = [str13 substringWithRange:range];
     85         NSLog(@"str14 = %@", str14);
     86         //从某一位开始截取后面的字符串
     87         NSString *str15 = [str13 substringFromIndex:9];
     88         NSLog(@"str15 = %@", str15);
     89         //从开头截取到某一位
     90         NSString *str16 = [str13 substringToIndex:9];
     91         NSLog(@"str16 = %@", str16);
     92         //将字符串拆分为每一个字符
     93         int j = (int)[str13 length];
     94         for(int i = 0; i < j; ++i)
     95         {
     96             NSLog(@"%c", [str13 characterAtIndex:i]);
     97         }
     98         
     99         //查找
    100         NSString *str17 = @"ab cd ef gh ij ab";
    101         //查找指定字符串的位置
    102         NSRange range1 = [str17 rangeOfString:@"ab"];//(这个查找是一个正向查找)
    103         NSLog(@"range1.location:%ld range1.length:%ld", range1.location, range1.length);
    104         
    105         //替换
    106         NSString *str18 = @"Hello huashan, Hello songlei";
    107         //替换某一个范围的内容
    108         NSString *str19 = [str18 stringByReplacingCharactersInRange:NSMakeRange(0, 5) withString:@"你好"];
    109         NSLog(@"str19 = %@", str19);
    110         //用指定字符串替换字符串中的子串
    111         /*
    112          stringByReplacingOccurrencesOfString - 源字符串中要被替换的内容 withString - 替换字符串
    113          */
    114         NSString *str20 = [str18 stringByReplacingOccurrencesOfString:@"Hello" withString:@"Hi"];
    115         NSLog(@"str20 = %@", str20);
    116         
    117 #pragma mark - NSURL(路径类)
    118         // 读取文件
    119         //文件来源:1.本地文件。2.网络文件
    120         //路径类
    121         NSString *str21 = @"www.baidu.com";
    122         //网络路径
    123         NSURL *httpURL = [NSURL URLWithString:str21];
    124         //本地路径
    125         NSURL *fileURL = [NSURL fileURLWithPath:str21];
    126         //读取网络文件
    127         NSString *httpStr = [NSString stringWithContentsOfURL:httpURL encoding:NSUTF8StringEncoding error:nil];
    128         NSLog(@"httpURL = %@", httpStr);
    129         //读取本地文件
    130         NSString *fileStr = [NSString stringWithContentsOfFile:@"/Users/hskj/Desktop/Test.txt" encoding:NSUTF8StringEncoding error:nil];    //Test.txt自己创建的纯文本文件,放在了桌面上
    131         NSLog(@"fileStr = %@", fileStr);    //fileStr = Hello IOS Songlei
    132         
    133         //写入文件
    134         NSString *str22 = @"Hello TravelColor";
    135         BOOL isOk = [str22 writeToFile:@"/Users/hskj/Desktop/Demo.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
    136         if (isOk)
    137         {
    138             NSLog(@"文件写入成功");
    139         }
    140         else
    141         {
    142             NSLog(@"文件写入失败");
    143         }
    144         
    145     }
    146     return 0;
    147 }
     1 2016-08-10 14:42:32.165 FoundationFrame[1117:177889] str1 = Hello Objective-C
     2 2016-08-10 14:42:32.166 FoundationFrame[1117:177889] str2 = Hello
     3 2016-08-10 14:42:32.166 FoundationFrame[1117:177889] str5 = a = 10 b = 20
     4 2016-08-10 14:42:32.166 FoundationFrame[1117:177889] str6 = a = 10 b = 20 and IOS
     5 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str8 = abcdefg
     6 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str9 = ABCDEFG
     7 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] 有对应前缀
     8 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] 有对应后缀
     9 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] 两个字符串不一致
    10 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str = a
    11 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str = b
    12 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str = c
    13 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str = d
    14 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str = e
    15 2016-08-10 14:42:32.167 FoundationFrame[1117:177889] str = f
    16 2016-08-10 14:42:32.168 FoundationFrame[1117:177889] str14 = b, c, d, 
    17 2016-08-10 14:42:32.168 FoundationFrame[1117:177889] str15 = d, e, f
    18 2016-08-10 14:42:32.168 FoundationFrame[1117:177889] str16 = a, b, c, 
    19 2016-08-10 14:42:32.168 FoundationFrame[1117:177889] a
    20 2016-08-10 14:42:32.168 FoundationFrame[1117:177889] ,
    21 2016-08-10 14:42:32.168 FoundationFrame[1117:177889]  
    22 2016-08-10 14:42:32.168 FoundationFrame[1117:177889] b
    23 2016-08-10 14:42:32.168 FoundationFrame[1117:177889] ,
    24 2016-08-10 14:42:32.168 FoundationFrame[1117:177889]  
    25 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] c
    26 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] ,
    27 2016-08-10 14:42:32.169 FoundationFrame[1117:177889]  
    28 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] d
    29 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] ,
    30 2016-08-10 14:42:32.169 FoundationFrame[1117:177889]  
    31 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] e
    32 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] ,
    33 2016-08-10 14:42:32.169 FoundationFrame[1117:177889]  
    34 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] f
    35 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] range1.location:0 range1.length:2
    36 2016-08-10 14:42:32.169 FoundationFrame[1117:177889] str19 = 你好 huashan, Hello songlei
    37 2016-08-10 14:42:32.170 FoundationFrame[1117:177889] str20 = Hi huashan, Hi songlei
    38 2016-08-10 14:42:32.186 FoundationFrame[1117:177889] httpURL = (null)
    39 2016-08-10 14:42:32.186 FoundationFrame[1117:177889] fileStr = Hello IOS Songlei
    40 2016-08-10 14:42:32.245 FoundationFrame[1117:177889] 文件写入成功
    41 Program ended with exit code: 0
  • 相关阅读:
    常用的dos命令
    java环境的配置
    javascript面向对象个人理解
    js如何获取样式?
    springboot新建项目遇到Whitelabel Error Page
    CSS 隐藏页面元素的 几 种方法总结
    优美动听的葫芦丝名曲
    大前端资料合集
    CSS实现背景透明,文字不透明(兼容所有浏览器)
    文字上下无缝滚动效果
  • 原文地址:https://www.cnblogs.com/songlei0601/p/5756701.html
Copyright © 2020-2023  润新知