// —————————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. MuPlayer『百度音乐播放内核』

    MuPlayer『百度音乐播放内核』 —— 跨平台.轻量级的音频播放解决方案. 多端(PC & WebApp)通用,统一的API调用方式 HTML5 Audio与Flash内核的平滑切换(支持 ...

  2. Ecplise + Xdebug 一波三折终于能单步调试了

    http://my.oschina.net/012345678/blog/152889 Ecplise + Xdebug 一波三折终于能单步调试了 发表于2年前(2013-08-15 15:50)   ...

  3. ubuntu下各个软件完全卸载

    1.卸载mysql sudo rm /var/lib/mysql/ -R删除mysql的数据文件2sudo rm /etc/mysql/ -R删除mqsql的配置文件3sudo apt-get aut ...

  4. php学习笔记 [预定义数组(超全局数组)]

    <?php  预定义数组: * 自动全局变量---超全局数组 * * 1.包含了来自WEB服务器,客户端,运行环境和用户输入的数据 * 2.这些数组比较特别 * 3.全局范围内自动生效,都可以直 ...

  5. .Net使用CDO发送邮件,需安装注册的组件

    regsvr32 C:\Program Files\Common Files\System\ado\msado15.dll regsvr32 CDOEX.DLL

  6. Link Management Protocol (LMP)

    1.1. Link Management Protocol (LMP)   1.1.1.   Introduction and Theory The Link Manager (LM) transla ...

  7. php安装xcache (5.4)

    安装环境centOS6.3APACHE:apache-2.4.4PHP:5.4.13 1.安装xchache: 代码如下: # wget http://xcache.lighttpd.net/pub/ ...

  8. 【转】JSP中的9大隐藏对象

    隐藏对象用在jsp表达式和脚本中,不能直接用在jsp声明中,因为这些隐藏对象是容器在jspservice方法中定义的,在这个方法中定义的变量不能在jsp声明中使用.可以通过参数方法将隐藏对象传递到js ...

  9. netstat 查看TCP状态值

    一.TCP 状态值 netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' CLOSED:无连接是活动的或正在进行LI ...

  10. 详解 Qt 线程间共享数据(用信号槽方式)

    使用共享内存.即使用一个两个线程都能够共享的变量(如全局变量),这样两个线程都能够访问和修改该变量,从而达到共享数据的目的. Qt 线程间共享数据是本文介绍的内容,多的不说,先来啃内容.Qt线程间共享 ...