IOS NSString 用法详解
- //NSString 操作均不改变自身值
- //构建字符串
- NSString *szTmp = @"A string"; //直接赋值
- szTmp = nil;
- int n = 5;
- NSString *szMyString = [NSString stringWithFormat:@"The number is %d",n]; //The number is 5
- [szMyString stringByAppendingFormat:@"%d",22]; //附加字符串返回值:The number is 522
- //但是szMyString本身并没有改变,其值依然:The number is 5
- //长度与索引字符
- NSLog(@"%d",szMyString.length); //字符串长度:15
- NSLog(@"%c",[szMyString characterAtIndex:2]); //返回字符:e
- //与c字符串相互转换
- printf("%s\n",[szMyString UTF8String]); //转为__strong const char *
- const char *szTmp1 = [szMyString cStringUsingEncoding:NSUTF8StringEncoding];
- printf("%s\n",szTmp1); //转为__strong const char *
- NSLog(@"%@",[NSString stringWithCString:szTmp1 encoding:NSUTF8StringEncoding]); //转为nsstring
- //字符串写文件
- NSError *error;
- NSString *szPath = [NSHomeDirectory() //应用程序沙盒路径
- stringByAppendingPathComponent:@"Documents/testFile.txt"]; //附加路径地址
- if (![szMyString writeToFile:szPath atomically:YES //atomically:是否是原子访问文件的
- encoding:NSUTF8StringEncoding error:&error]) { //写入成功返回yes 否则no
- NSLog(@"Error writing to file :%@",[error localizedDescription]); //输出错误描述
- return 1;
- }
- NSLog(@"File write success");
- //文件读字符串
- NSString *szInString = [NSString stringWithContentsOfFile:szPath //读取文件信息
- encoding:NSUTF8StringEncoding error:&error];
- if (!szInString)
- {
- //失败
- }
- NSLog(@"%@",szInString); //成功
- //字符串转为数组
- NSArray *arrayWord = [szMyString componentsSeparatedByString:@" "]; //有空格的拆分为单词保存
- NSLog(@"%@",arrayWord);
- //索引子串
- NSString *szSub1 = [szMyString substringToIndex:3]; //0-2,前3个:The
- NSLog(@"%@",szSub1);
- NSString *szSub2 = [szMyString substringFromIndex:4]; //4-尾,去掉前4个:number is 5
- NSLog(@"%@",szSub2);
- //范围索引
- NSRange range;
- range.location = 4; //从4开始
- range.length = 6; //6个字符
- NSString *szSub3 = [szMyString substringWithRange:range]; //number
- NSLog(@"%@",szSub3);
- //搜索与替换
- NSRange rangeSearch = [szMyString rangeOfString:@"is 5"]; //搜索
- if (rangeSearch.location != NSNotFound) { //搜索不到是 NSNotFound
- //成功:rangeSearch.location;//位置 rangeSearch.length;//长度
- }
- NSLog(@"%@",[szMyString stringByReplacingCharactersInRange:rangeSearch //用位置匹配替换
- withString:@"isn't 10"]);
- NSString *szReplaced = [szMyString stringByReplacingOccurrencesOfString:@" " withString:@"*"]; //匹配字符串替换
- NSLog(@"%@",szReplaced);
- //改变大小写
- NSLog(@"%@",[szMyString uppercaseString]); //大写
- NSLog(@"%@",[szMyString lowercaseString]); //小写
- NSLog(@"%@",[szMyString capitalizedString]); //首字母大写
- //比较字符串
- NSString *sz1 = @"Hello World!";
- NSString *sz2 = @"Hello Mom!";
- if ([sz1 isEqualToString:sz2]) {/*相等*/}
- if ([sz1 hasPrefix:@"Hello"]) {NSLog(@"前部分相等");} //从头开始比较
- if ([sz1 hasSuffix:@"d!"]) {NSLog(@"后部分相等");} //从尾部比较
- //字符串转换数字
- NSString *szNumber = @"3.14";
- [szNumber intValue];
- [szNumber boolValue];
- [szNumber floatValue];
- [szNumber doubleValue];
- //可变字符串
- NSMutableString *szMuMyString = [NSMutableString stringWithString:@"Hello"];
- [szMuMyString appendFormat:@"World"]; //字符串,改变自身
- [szMuMyString uppercaseString];
- NSLog(@"%@",szMuMyString);
IOS NSString 用法详解的更多相关文章
- ios NSFileManager 用法详解
转自:http://blog.csdn.net/ios_che/article/details/7287266 iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过ipho ...
- IOS UIButton用法详解
这段代码动态的创建了一个UIButton,并且把相关常用的属性都列举了.希望对大家有用. //这里创建一个圆角矩形的按钮UIButton *button1 = [UIButton buttonWi ...
- UIWebView用法详解及代码分享
今天我们来详细UIWebView用法.UIWebView是iOS内置的浏览器控件,可以浏览网页.打开文档等 能够加载html/htm.pdf.docx.txt等格式的文件. 用UIWebView我们就 ...
- iOS应用开发详解
<iOS应用开发详解> 基本信息 作者: 郭宏志 出版社:电子工业出版社 ISBN:9787121207075 上架时间:2013-6-28 出版日期:2013 年7月 开本:16开 ...
- 转载]IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本 )
原文地址:IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本作者:佐佐木小次郎 因为最近项目上要用有关LBS的功能.于是我便做一下预研. 一般说来LBS功能一般分为两块:一块是地理 ...
- iOS中-Qutarz2D详解及使用
在iOS中Qutarz2D 详解及使用 (一)初识 介绍 Quartz 2D是二维绘图引擎. 能完成的工作有: 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成 ...
- C#中string.format用法详解
C#中string.format用法详解 本文实例总结了C#中string.format用法.分享给大家供大家参考.具体分析如下: String.Format 方法的几种定义: String.Form ...
- @RequestMapping 用法详解之地址映射
@RequestMapping 用法详解之地址映射 引言: 前段时间项目中用到了RESTful模式来开发程序,但是当用POST.PUT模式提交数据时,发现服务器端接受不到提交的数据(服务器端参数绑定没 ...
- linux管道命令grep命令参数及用法详解---附使用案例|grep
功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...
随机推荐
- 第一次用python,成功的感觉不错。
自己的作业: 1. count = 0 while count <= 9 : count += 1 if count == 7 : continue print (count) 2. count ...
- Codeforces Round #248 (Div. 1) B. Nanami's Digital Board 暴力 前缀和
B. Nanami's Digital Board 题目连接: http://www.codeforces.com/contest/434/problem/B Description Nanami i ...
- Go语言Web框架gwk介绍 (五)
Session Go的net/http本身不带session的机制,需要开发人员自行实现,gwk实现了内存中的session存储机制,如果需要将session存在其他地方比如redis或者memcac ...
- OpenCV/CUDA/Qt 环境配置小结
OpenCV Qt CUDA windows环境下 配置 反复装过几次,每次都网搜攻略:自个做个记录 方便以后使用. 碰到OpenCV各种奇怪的错误 先看看 图片imread() 有没有读空 再找其他 ...
- 背景建模或前景检測之PBAS
申明,本文非笔者原创,原文转载自:http://blog.csdn.net/kcust/article/details/9931575 Pixel-Based Adaptive Segmenter(P ...
- C 常量的类型
http://bbs.csdn.net/topics/380028485 整型常量的类型是下列相应表中第一个能表示其值的类型: int --> long int --> long long ...
- IT程序猿们,我该做什么选择呢
这个时刻,我想我遇到人生小拐点了,程序猿到了30岁,到达了一个分界线了,现在的我该何去何从呢? 先谈下简单的情况吧: 来这个公司2年了,之前因为身体的原因,不想那么累,于是选择了一份维护的工作,就来了 ...
- [Asp.net MVC]HandleErrorAttribute异常过滤器
摘要 在asp.net mvc中除了使用try...catch/finally来处理异常外,它提供了一种通过在Controller或者Action上添加特性的方式来处理异常. HandleErrorA ...
- Oracle 学习(scott方案)
Oracle学习中,重点是sql语句的学习,而所有的sql语句都要在scott用户下完成. 熟悉这个用户下的四张表,是必要的. 查看所有表名: SELECT * FROM tab; 查看每张表的结 ...
- Selenium2+python自动化29-js处理多窗口
前言 在打开页面上链接的时候,经常会弹出另外一个窗口(多窗口情况前面这篇有讲解:Selenium2+python自动化13-多窗口.句柄(handle)),这样在多个窗口之间来回切换比较复杂,那么有没 ...