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 ...
随机推荐
- MMORPG大型游戏设计与开发(客户端架构)
首先为所有等待的朋友说一声歉意,实在让大家等的太久.客户端的设计本来就是一个大的工程,而且工作的关系,也没有太多时间在这方面做研究.不过在私下有空的时间,我还是继续着这方面的研究,很遗憾没有用期望的o ...
- Stanford机器学习笔记-6. 学习模型的评估和选择
6. 学习模型的评估与选择 Content 6. 学习模型的评估与选择 6.1 如何调试学习算法 6.2 评估假设函数(Evaluating a hypothesis) 6.3 模型选择与训练/验证/ ...
- jsp前三章小测试:错题
/bin:存放各种平台下用于启动和停止Tomcat的脚本文件 /logs:存放Tomcat的日志文件 /webapps:web应用的发布目录 /work:Tomcat把由JSP生成的Servlet存放 ...
- ComboBox的联动
窗体搭建: 实现功能: 加载年级下拉框 选中年级时加载出科目下拉框 加载年级下拉框: 第一步,在DAL层中写一个方法,检索所有的年级名称集合,返回的是泛型集合List<> public L ...
- Hibernate中saveOrUpdate()和merge()的区别
this.getSession().merge(obj); this.getSession().saveOrUpdate(obj); saveOrUpdate(): saveOrUpdate()基本上 ...
- NOIP2003 神经网络
题目背景 人工神经网络(Artificial Neural Network)是一种新兴的具有自我学习能力的计算系统,在模式识别.函数逼近及贷款风险评估等诸多领域有广泛的应用.对神经网络的研究一直是当今 ...
- 非智能手机通信录备份并还原至Android智能手机方法
随着智能手机早已深入普通用户的生活,2-3线城市的用户也逐渐从使用非智能机换成使用智能机.最近便遇见了这样一个转移通讯录的需求.之前使用的手机型号是BBK K201,通信录中绝大部分保存在了手机中,最 ...
- linux下截取给定路径中的目录部分
在日常运维中,有时会要求截取一个路径中的目录部分.截取目录的方法,有以下两种:1)dirname命令(最常用的方法):用于取给定路径的目录部分.很少直接在shell命令行中使用,一般把它用在shell ...
- Twitter Snowflake 的Java实现
在关闭显示的情况下, 可以达到每毫秒3万个的生成速度 /** * An Implementation of Twitter Snowflake ID Generator */ public class ...
- (原创)mybatis学习一,夯实基础
一,what?(是什么) MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可 ...