1.NSString 字符串常用方法 1.0 OC、C字符串类型转换 char *s = @“hello”; NSString *str = @“hello”; C->OC: NSString *str1 = [NSString stringWithUTF8String:s]; OC->C: [str UTF8Strig]; 1.1 创建字符串、格式化字符串、拼接字符串、大小写转换 NSString *str = @“Objective-C”; // 自动释放内存 NSString *string = @“你好”; NSString *str1 = [[NSString alloc] init]; // 必须手动释放内存 格式化字符串:[NSString stringWithFormat:@“a=%d, b=%d”, a , b]; 拼接字符串:[str stringByAppendingFormat:string]; 大小写转换:NSString *str2 = @“aBcDEFG”; NSString *s = [str2 lowercaseString]; // 转换成小写 NSString *s = [str2 uppercaseString]; // 转换成大写 1.2 判断前后缀、判断两个字符串是否相同、比较字符串(NSComparisonResult) NSString *str = @“www.baidu.com”; BOOL isPreFix = [str hasPrefix:@“www.”]; // 判断前缀是否相等 BOOL isSufFix = [str hasSuffix:@“com”]; // 判断后缀是否相等 判断两个字符串是否相同:[str1 isEqualToString:str2]; 1.3 分割、范围截取、拆分字符串 NSString *str = @“a,b,c,d,e,f,g”; 分割:NSString *s = [str componentsSeparatedByString:@“,”]; 范围截取:[NSString substringWithRange:NSMakeRange(1,5)]; // 1为截取的位置,5为截取的长度 从某一位开始截取后面的字符串:NSString *str = [s substringFromIndex:2]; 从开头截取到某一位:NSString *str = [s substringToIndex:7]; 将字符串拆分为每一个字符 for(int i = 0; i < [str length]; i++) { NSLog(@“%c”, [s characterAtIndex:i]); } 1.4 查找、替换 NSString *str = @“ab cd ef gh ht la”; 查找指定字符串的位置: NSRange range = [str rangeOfString:”ab”]; NSLog(@“range.location=%ld, range.length=%ld”, range.location, range.length); 替换某一范围的内容:NSString *s = [str stringByReplacingCharactersInRange:NSMakeRange(0,5) withString:@“你好”]; 指定字符串替换:NSString *s1 = @“hello OC; hello swift”; // 将s1中 hello 字符串换成 你好 NSString *ss = [s1 stringByReplacingOccurrencesOfString:@“hello” withString:@“你好”]; 1.5 文件的读取 NSString *url = @“www.bai.com”; // 网络路径 NSURL *httpUrl = [NSURL URLWithString:url]; // 本地路径 NSURL *fileUrl = [NSURL fileURLWithPath:url]; // 读取网络文件 NSString *httpString = [NSString stringWithContentsOfURL:httpUrl encoding:NSUTF8StringEncoding error:nil]; // 读取本地文件 NSString *fileString = [NSString stringOfWithContentOfFile:@“users/FounderDirectory/文件名.txt” encoding:NSUTF8String error:nil]; // 写入文件 NSString *file = @“Hello Objective-C”; [file writeToFile:@“users/FounderDirectory/demo.txt” atomically:YES encoding:NSUTF8StringEncoding error:nil]; 1.6 用0补全 NSInteger count = 5; NSString *string = [NSString stringWithFormat:@“%02zd”,count]; // 02代表:如果count不足两位,用0在前面补全(2代表输出的个数) NSLog(@“%@”,string); // 输出结果为:05 2.NSMutableString 可变字符串常用方法 可变字符串是字符串的子类 NSMutableString *mutString = [[NSMutableString alloc] initWithCapacity:10]; [mutString setString:@“Hello”]; 1.0 追加字符串、替换字符串、插入字符串、删除字符串 追加字符串: [mutString appendString:@“world”]; // 追加格式化字符串 int a = 10; [mutString appendFormat:@“%d”,a]; // 替换字符串 NSRange range = [mutString rangeOfString:@“world”]; [str replaceCharactersInRange:range withString:@“iOS”]; // 插入字符串 [mutString insertString:@“A” atIndex:6]; // 删除字符串 NSRange range1 = [mutString rangeOfString:@“AiOS”]; [mutString deleteCharacterInRange:range1];