iOS常用---NSString,NSMutabuleString
普通的创建字符串:
NSString *string =[[NSString alloc]init]; //创建一个空的字符串,即 @“”
一 、字符串读取本地文件:
参数一: 文件地址
参数二: 文件内容的下标,如"4" 或者 转换格式,如"NSUTF8StringEncoding"
参数三: 此处需要填写一个二级指针NSError参数,可以创建一个空的NSError对象填写进来,如果用不上直接填写'nil'];
补充:如果在一些时候遇到有NSError型的参数时,只需要填补一个NSError型空对象即可,如:
NSError *error =nil; //定义一个NSError型空对象
NSString *stringFile =[[NSString alloc]initWithContentsOfFile:@"/user/desck/ios..." encoding:NSUTF8StringEncoding error:&error];//别忘了error前添加取地址符'&'
// 当读取文件时,error依然为nil,则读取成功,如果error有值,则读取失败,(没有此文件,或路径不正确等原因...)
二、字符串访问网络文件:
// 字符串读取本地文件
// 参数一: 文件地址
// 参数二: 文件内容的下标,如"4" 或者 转换格式,如"NSUTF8StringEncoding"
// 参数三: 此处需要填写一个二级指针NSError参数,可以创建一个空的NSError对象填写进来,如果用不上直接填写'nil'];
// 补充:如果在一些时候遇到有NSError型的参数时,只需要填补一个NSError型空对象即可,如:
// NSError *error2 =nil;//定义一个NSError型空对象 // NSURL *url =[NSURL URLWithString:@"www.baidu.com"]; // NSString *stringurl =[[NSString alloc]initWithContentsOfURL:url encoding:4 error:&error2];//别忘了error前添加取地址符'&',当读取文件时,error依然为nil,则读取成功,如果error有值,则读取失败,(没有此文件,或路径不正确等原因...)
三、字符串拼接,格式化字符串
NSString *str =@"hello";
int a =;
NSString *strFormat =[NSString stringWithFormat:@"www.%@.%d",str,a];//拼接
NSLog(@"aaaa%@",strFormat);
四、 字符串的比较
// 比较有两种方式"compare" 与 "isEqualToString"
compare 比较:
NSString *s1 =@"";
NSString *s2 =@"";
NSComparisonResult compar =[s1 compare:s2];//"compare"方法里还有两个方法,可以根据需要使用,如比较字符串中某个范围的字符串....
NSLog(@"%ld",(long)compar); //左边比右边大结果为正数,右边比左边大为负数,相同为0
isEqualToString 比较:
// 直接判断两个是否相同
if ([s1 isEqualToString:s2]) {
NSLog(@"相同");
}
五、 根据 首/尾 字符串做判断条件:
NSString *path =@"http//:www.hehkjdhsuh.com.jpg.bat";
BOOL istrue1 =[path hasSuffix:@"http//"]; //判断首部
BOOL istrue2 =[path hasPrefix:@".jpg"]; //判断尾部
六、字符串截取的几种方式:
NSString *str =@"abcdefghijklmn";
// “NSRange”是结构体,包含了 (范围)location (长度)length 两个属性;
// 一、 查询范围
NSRange range1 =[str rangeOfString:@"c"];//在字符串中找到@"c"的范围(2,1)
// 二、 锁定范围截取
7 NSRange ranges =NSMakeRange(2, 3);// 设置范围
NSString *strs =[str substringWithRange:ranges]; // 获取从第2个开始,长度为3的字符串
也可以动态的循环遍历使用
NSString *word = [text substringWithRange:NSMakeRange(i, )]; //for循环中根据'i'的变化每次截取一位
// 三、从第几个开始截取
NSString *s =[str substringFromIndex:];//从第某个位置开始截取到最后
// 四、从其中某个字符开始
// NSCaseInsensitiveSearch = 1 //不区分大小写样式
// NSLiteralSearch = 2, // 文字搜索
// NSBackwardsSearch = 4, // 向后搜索
// NSAnchoredSearch = 8, //锚定
// NSNumericSearch = 64, //数字
五、从某个具体的字符开始
// NSRange r =[str rangeOfString:从字符串中哪一个字符开始 options:搜索方式 range:搜索范围];
// 如下:
NSRange rangee =[str rangeOfString:@"d" options: range:range1];
六、 字符串写入文件
// 字符串写入文件的方法:
NSString *st =@"12345,上山打老虎";
NSError *errors =nil;
// BOOL isture =[st writeToFile:文件路径 atomically:YES encoding:NSUTF8StringEncoding error:errors];
七、字符串的替换
NSString *str =@"";
NSString *str2 =[str stringByReplacingOccurrencesOfString:@"" withString:@"A"];
NSLog(@"%@",str2);//结果:A23A23A23
八、 删除字符串两边的不需要的东西(只会去掉两边的,中间的不会去掉)
// 例如:去掉空格
NSString * str=@" 4i1234 ";
str =[str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
// 例如:去掉两边的 4
str =[str stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@""]];
NSLog(@"%@",str);//结果:i123
九、可变字符串 NSMutbulString-----------------------------------------------------------------------------
NSMutableString *Mstr =[[NSMutableString alloc]initWithString:@"GG"];
// 增: 增天字符串内容
[Mstr appendString:@"hello"];//可变字符串的增加
[Mstr appendString:@""];
NSLog(@"%@",Mstr);//结果:GGhello123
// 格式化可变字符串 [Mstr appendFormat:@"~ %@ ~",Mstr]; 结果:GGhello123~ GGhello123~ ~ [Mstr insertString:@"hehe" atIndex:]; //在2号位置插入字符串 NSLog(@"%@",Mstr); //结果:GGhehehello123~ GGhello123~ ~
15 // 删:把字符串中某些内容删掉
[Mstr deleteCharactersInRange:NSMakeRange(, )]; //删除“hehe” NSLog(@"%@",Mstr); //结果:GGhello123~ GGhello123~ ~ // 改: 把字符串的某些内容替换掉 [Mstr replaceCharactersInRange:NSMakeRange(, ) withString:@"www."]; NSLog(@"%@",Mstr); //结果:www.~ GGhello123~ ~
iOS常用---NSString,NSMutabuleString的更多相关文章
- iOS常用公共方法
iOS常用公共方法 字数2917 阅读3070 评论45 喜欢236 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat si ...
- IOS常用正则表达式
IOS常用正则表达式 正则表达式用于字符串处理.表单验证等场合,实用高效.现将一些常用的表达式收集于此,以备不时之需. 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是 ...
- iOS常用的设计模式
iOS常用的设计模式有:单例模式.委托模式.观察者模式和MVC模式.下面分别简单介绍. 一:单例模式 我们常用的UIApplication.NSUserdefaults.NSNotificationC ...
- iOS 常用公共方法
iOS常用公共方法 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat size = 0.0; NSError *error; N ...
- iOS常用基础框架
一,简述 1.1,IOS操作系统的层次架构 iOS为应用程序开发提供了许多可使用的框架,并构成IOS操作系统的层次架构,分为四层,从上到下依次为:Cocoa Touch Layer( ...
- iOS常用加密方法(aes、md5、base64)
1.代码 iOS常用加密方法(aes.md5.base64) .AES加密 NSData+AES.h文件 // // NSData-AES.h // Smile // // Created by 周 ...
- iOS常用加密之RSA加密解密
前言: iOS常用的加密有很多种,前两天在工作中遇到了RSA加密,现在把代吗分享出来. RSA基本原理 RSA使用"秘匙对"对数据进行加密解密.在加密解密数据前,需要先生成公钥(p ...
- iOS 常用三方类库整理
iOS 常用三方类库整理 1:基于响应式编程思想的oc 地址:https://github.com/ReactiveCocoa/ReactiveCocoa 2:hud提示框 地址:https://gi ...
- iOS常用的忽略警告
在iOS开发过程中,偶尔会碰到一些编译器警告,如果能够确定该警告不会影响到程序的正常运行,则可以手动告诉编译器忽略掉这个警告 iOS常用的忽略警告类型: 1.方法弃用警告 #pragma clang ...
随机推荐
- 大一上学期的一点小疑惑,代码验证ok
#include<iostream> using namespace std; class test { int *p; int pn; public: test(int n) { p = ...
- 三星s4宣传片配色有惊喜
三星s4宣传片配色有惊喜据了解,一周前,三星曾对外发布了新旗舰手机galaxy s4的宣传视频,不过那份视频里所含信息仅仅只有s4发布会的邀请函.而日前,三星官方发布了s4的第二弹宣传片则暗示该机在配 ...
- OAuth2学习及DotNetOpenAuth部分源码研究
OAuth2学习及DotNetOpenAuth部分源码研究 在上篇文章中我研究了OpenId及DotNetOpenAuth的相关应用,这一篇继续研究OAuth2. 一.什么是OAuth2 OAuth是 ...
- 精通CSS version2笔记之⒈选择器
1.常用的选择器:①元素选择器 指定希望应用样式的元素.比如:p {color:#fff;}②后代选择器 寻找特定元素或者元素的后代. 比如:body p{color:#ccc;} 这个选 ...
- lca入门———树上倍增法(博文内含例题)
倍增求LCA: father[i][j]表示节点i往上跳2^j次后的节点 可以转移为 father[i][j]=father[father[i][j-1]][j-1] 整体思路: 先比较两个点的深度, ...
- JS中NULL和Undefined的区别
NULL是表示一个”无“的对象,转换成数值为0:undefined是一个“无”的原始值,转为数值为NaN: 当声明的变量还未被初始化时,变量的默认值为undefined: null用来表示尚未存在的对 ...
- 一种Docker image镜像的取代方案
在http://openvz.org/Download/templates/precreated中有很多压缩的镜像文件,可以将这些文件下载后采用import方式使用镜像,也可以采用我原来的博文:doc ...
- 关于a标签和submit标签
a如果没有连接“#”:“javascript:void(0)”;或“(胡乱写一堆)” 这两个标签点击都有刷新功能,所以会清空你的数据.
- PL/SQL Transaction Control
PL/SQL 基础 ( 下 ) 1. PL/SQL中的 SQL语句 - END语句与COMMIT等内容,没有任何关系. - PL/SQL does not directly support dat ...
- Dynamics CRM 2016 的新特性
新版本CRM (2016 with update 0.1) 发布已有几个月了,总结一下新特性,从几个方面来看: 1. 针对整合功能的新特性 (1) 增加了CRM App for Outlook. 这个 ...