普通的创建字符串:

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的更多相关文章

  1. iOS常用公共方法

      iOS常用公共方法 字数2917 阅读3070 评论45 喜欢236 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat si ...

  2. IOS常用正则表达式

    IOS常用正则表达式 正则表达式用于字符串处理.表单验证等场合,实用高效.现将一些常用的表达式收集于此,以备不时之需. 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是 ...

  3. iOS常用的设计模式

    iOS常用的设计模式有:单例模式.委托模式.观察者模式和MVC模式.下面分别简单介绍. 一:单例模式 我们常用的UIApplication.NSUserdefaults.NSNotificationC ...

  4. iOS 常用公共方法

    iOS常用公共方法 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat size = 0.0; NSError *error; N ...

  5. iOS常用基础框架

    一,简述  1.1,IOS操作系统的层次架构         iOS为应用程序开发提供了许多可使用的框架,并构成IOS操作系统的层次架构,分为四层,从上到下依次为:Cocoa Touch Layer( ...

  6. iOS常用加密方法(aes、md5、base64)

    1.代码 iOS常用加密方法(aes.md5.base64) .AES加密 NSData+AES.h文件 // // NSData-AES.h // Smile // // Created by 周 ...

  7. iOS常用加密之RSA加密解密

    前言: iOS常用的加密有很多种,前两天在工作中遇到了RSA加密,现在把代吗分享出来. RSA基本原理 RSA使用"秘匙对"对数据进行加密解密.在加密解密数据前,需要先生成公钥(p ...

  8. iOS 常用三方类库整理

    iOS 常用三方类库整理 1:基于响应式编程思想的oc 地址:https://github.com/ReactiveCocoa/ReactiveCocoa 2:hud提示框 地址:https://gi ...

  9. iOS常用的忽略警告

    在iOS开发过程中,偶尔会碰到一些编译器警告,如果能够确定该警告不会影响到程序的正常运行,则可以手动告诉编译器忽略掉这个警告 iOS常用的忽略警告类型: 1.方法弃用警告 #pragma clang ...

随机推荐

  1. DirectX API 编程起步 #01 项目设置

    =========================================================== 目录: DirectX API 编程起步 #02 窗口的诞生 DirectX A ...

  2. plsql+绿色版oracle连接远程数据库配置及提示缺少msvcr71.dll解决方法

    之前一直用的sqldeveloper连接oracle数据库,这个免费而且也是官方出品,除了体积略大启动略慢外,也没什么不好的.. 一次偶然机会决定试一下plsql,整理一下安装资料,需要本地oracl ...

  3. webdriver的工作原理

    selenium1的原理就是使用js来驱动浏览器,因为现在基本不用,所以不做过多讨论,下面是我整理的webdriver的工作原理,大致就是通过命令请求webdriver,然后webdriver通过浏览 ...

  4. Windows系统小知识

    前言 本文写作于Window10发布后的2015-08-01,新系统发布后我做了新系统的小白鼠,所以写此文以作记录. WIN10各版本下载地址:http://www.ithome.com/html/w ...

  5. NOIP模拟赛 夕阳

    题目描述 “我有个愿望,我希望在灿烂千阳时遇见你.” 这是个有n个点的世界,有m条无向边连接着这n个点,但是不保证点之间能够互相到达. “这个世界的夕阳,只在奇数长的简单路径的尽头.”一个神如是说. ...

  6. Oracle 行转列,列转行

    一.行转列1.1.初始测试数据表结构:TEST_TB_GRADESql代码:1    create table TEST_TB_GRADE2    (3      ID        NUMBER(1 ...

  7. header

    本文分享几个php header函数的例子,有需要的朋友参考学习下. 转自:http://www.jbxue.com/article/php_header_x5hV63c.html 1,可以使用hed ...

  8. 关于IOS免证书真机安装的过程和问题

    由于本人是边工作边转的IOS,所以一直都没怎么使用过免证书安装过程,通常都是公司申请的99美元的账号直接开发.但是前两天有个朋友需要在展会上用的Ipad上安装内网应用,申请一个苹果账号还要审核前后加起 ...

  9. jQuery动态产生的铵钮怎样实现事件处理

    在ASP.NET MVC环境中,实现一个小功能,就是希望使用jQuery动态一个铵钮,并让用户能执行这个铵钮的click事件.为了更好的理解与对比,Insus.NET在视图中先写一个静态的,执行相似的 ...

  10. Linux 进程详解

    Linux内核的七大区间 .进程管理(进程创建,进程的三种状态,进程间的调度,调度算法...) .内存管理(段式管理(Linux所有段都从0开始),页式管理--地址偏移量) .系统调用(C语言库函数的 ...