// —————————NSString

// NSString

//1.初始化:直接字符串、格式化字符串、文件读取内容初始化

NSString *str1 = @"hello world!";

NSString *str2 = [NSString stringWithFormat:@"start to printf: %@", str1];

NSString *str3 = [[NSString alloc] initWithContentsOfFile:@"/user/document/test.txt" encoding:NSUTF8StringEncoding error:nil];

// 字符串写入文件

[str1 writeToFile:@"/user/document/test.txt" atomically:YES];

// 字符串大写、小写、首字母大写

str1 = [str1 uppercaseString];

str1 = [str1 lowercaseString];

str1 = [str1 capitalizedString];

//字符串截取

str2 = [str1 substringFromIndex:5];

NSLog(@"string = %@", str2);

str2 = [str1 substringToIndex:5];

NSLog(@"string = %@", str2);

str2 = [str1 substringWithRange:NSMakeRange(0, 7)];

NSLog(@"string = %@", str2);

// 字符串是否以另一字符串开头或结尾

BOOL isStart = [str1 hasPrefix:@"hello"];

NSLog(@"isStart is : %i", isStart);

BOOL isEnd = [str1 hasSuffix:@"world!"];

NSLog(@"isEnd is : %i", isEnd);

// 获取文件后缀名

NSString *filePath = @"/document/test.txt";

NSString *ext = [filePath pathExtension];

NSLog(@"ext is : %@", ext);

// 字符串转整形

NSString *value = @"100";

int va = [value intValue];

NSLog(@"va is : %i", va);

// 字符串替换

str1 = [str1 stringByReplacingOccurrencesOfString:@"hello" withString:@"bye bye"];

// 字符串转整

int intVal = [str1 intValue];

NSLog(@"str to int : intVal= %i", intVal);

str1 = [[NSNumber numberWithInteger:intVal] stringValue];

NSLog(@"int to str = %@", str1);

// 字符串分割

NSString *splitStr = @"test1;test2;test3;test4";

NSArray *array = [splitStr componentsSeparatedByString:@";"];

NSLog(@"%@", array);

// 可变字符串

NSMutableString *mulStr = [[NSMutableString alloc] initWithCapacity:1];

[mulStr appendString:@"test1"];

[mulStr appendFormat:@"test2"];

[mulStr insertString:@";" atIndex:5];

[mulStr replaceCharactersInRange:NSMakeRange(0, 4) withString:@"replace test"];

[mulStr deleteCharactersInRange:NSMakeRange(0, 4)];

// 查找字符串包含

NSRange range = [mulStr rangeOfString:@"test"];

NSLog(@"location : %ld", range.location);

NSLog(@"mulStr is : %@", mulStr);

// 字符串比较  小于:-1 等于:0 大于:1

NSString *comStr1 = @"bbc";

NSString *comStr2 = @"bbc";

NSComparisonResult result = [comStr1 compare:comStr2];

NSLog(@"result=%ld", result);

NSString的更多相关文章

  1. NSString属性什么时候用copy,什么时候用strong?

           我们在声明一个NSString属性时,对于其内存相关特性,通常有两种选择(基于ARC环境):strong与copy.那这两者有什么区别呢?什么时候该用strong,什么时候该用copy呢 ...

  2. iOS UIAlertController跟AlertView用法一样 && otherButtonTitles:(nullable NSString *)otherButtonTitles, ... 写法

    今天写弹出框UIAlertController,用alertView习惯了,所以封装了一下,跟alertView用法一样,不说了,直接上代码: 先来了解一下otherButtonTitles:(nul ...

  3. 【去除NSString 字符串中的空格换行符】

    @interface NSString (DeletWhiteSpace) // 返回一个去掉前后空格的字符串或者下划线,如果自己是一个nil 返回@“” - (NSString *)trimming ...

  4. NSString 的常用操作

    NSString *testStr01=@"HelloWord"; NSString *testStr02=[testStr01 substringToIndex:];//取头(从 ...

  5. 时间戳转化为日期TimeStamp转NSDate转NSString

    //时间戳处理 NSInteger time = [self.album.updatedAt integerValue] / 1000; NSNumber *timer = [NSNumber num ...

  6. iOS - Json解析精度丢失处理(NSString, Double, Float)

    开发中处理处理价格金额问题, 后台经常返回float类型, 打印或转成NSString都会有精度丢失问题, 因此使用系统自带的NSDecimalNumber做处理, 能解决这问题:经过测试其实系统NS ...

  7. iOS NSString中的搜索方法rangeOfString

    NSString *str = @"your://aaa?backscheme=my"; //在str中查找“backscheme=”,并返回一个NSRange类型的值,我们可以通 ...

  8. NSString相关操作

    //创建一个字符串对象 NSString * str_1 = @"Hello"; //字面量方法 ; NSString * str_2 = [NSString stringWith ...

  9. NSString 和NSData 转换

    NSString 转换成NSData 对象 NSData* xmlData =[@"testdata" dataUsingEncoding:NSUTF8StringEncoding ...

  10. NSString 初始化方法的内存比较

    NSString *str1 = @"hello"; NSString *str2 = @"hello"; NSString *str3 = [NSString ...

随机推荐

  1. Web 在线文件管理器学习笔记与总结(17)复制文件 (18)剪切文件

    (17)复制文件 ① 复制文件通过copy($src,$dst) 来实现 ② 检测目标目录是否存在,如果存在则继续检测目标目录中是否存在同名文件,如果不存在则复制成功 file.func.php 中添 ...

  2. 为Ubuntu Server安装gnome图形桌面环境

    Ubuntu Server版默认都没有图形桌面(GUI),但是可以安装,以下共有两种安装方法. 一.安装全部Gnome桌面环境 Ubuntu系列桌面实际上有几种桌面应用程序,包括Ubuntu-desk ...

  3. shell 中的数学计算

    1.1.第一种——expr格式:expr 操作数 1 操作符 操作数 2举例:      1 expr 1 + 2 TMP=$(expr 1 + 2)      2 expr 1 + 4 / 3 TM ...

  4. Bootstrap页面布局16 - BS导航菜单和其响应式布局以及导航中的下拉菜单

    代码: <div class='container-fluid'> <h2 class='page-header'>导航</h2> <!-- .navrbar ...

  5. MySQL出现大量unauthenticated user的问题

    发现这算属MySQL的一个bug,不管连接是通过hosts还是ip的方式,MySQL都会对DNS做反查,IP到DNS,由于反查的接续速度过 慢(不管是不是isp提供的dns服务器的问题或者其他原因), ...

  6. Two's complement

    https://en.wikipedia.org/wiki/Two's_complement The two's-complement system has the advantage that th ...

  7. ajax+jsp自动刷新

    通过 AJAX,JavaScript 可使用 JavaScript 的 XMLHttpRequest 对象来直接与服务器进行通信.通过这个对象, JavaScript 可在不重载页面的情况与 Web ...

  8. FTS抓包看蓝牙的SDP整个过程

    1.概述   SDP是蓝牙的Service Discovery Protocol,用来发现远程设备能够提供的Service.它只负责发现对方支持的Service,不负责Service的具体实现.   ...

  9. 利用select函数的定时返回功能在Windows上实现微秒级的cpu休眠

    说明:在调用该函数前要先调用WSAStartup初始化Winsock void uSleep(uint32_t usec) { struct timeval timeout; fd_set fds; ...

  10. 在express中使用Mongoose连接MongoDB

    为何要学Mongoose? Mongoose是MongoDB的一个对象模型工具,封装了MongoDB对文档的的一些增删改查等常用方法,让NodeJS操作Mongodb数据库变得更加灵活简单. 0.安装 ...