普通的创建字符串:

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. 大一上学期的一点小疑惑,代码验证ok

    #include<iostream> using namespace std; class test { int *p; int pn; public: test(int n) { p = ...

  2. 三星s4宣传片配色有惊喜

    三星s4宣传片配色有惊喜据了解,一周前,三星曾对外发布了新旗舰手机galaxy s4的宣传视频,不过那份视频里所含信息仅仅只有s4发布会的邀请函.而日前,三星官方发布了s4的第二弹宣传片则暗示该机在配 ...

  3. OAuth2学习及DotNetOpenAuth部分源码研究

    OAuth2学习及DotNetOpenAuth部分源码研究 在上篇文章中我研究了OpenId及DotNetOpenAuth的相关应用,这一篇继续研究OAuth2. 一.什么是OAuth2 OAuth是 ...

  4. 精通CSS version2笔记之⒈选择器

    1.常用的选择器:①元素选择器   指定希望应用样式的元素.比如:p {color:#fff;}②后代选择器   寻找特定元素或者元素的后代. 比如:body p{color:#ccc;}   这个选 ...

  5. lca入门———树上倍增法(博文内含例题)

    倍增求LCA: father[i][j]表示节点i往上跳2^j次后的节点 可以转移为 father[i][j]=father[father[i][j-1]][j-1] 整体思路: 先比较两个点的深度, ...

  6. JS中NULL和Undefined的区别

    NULL是表示一个”无“的对象,转换成数值为0:undefined是一个“无”的原始值,转为数值为NaN: 当声明的变量还未被初始化时,变量的默认值为undefined: null用来表示尚未存在的对 ...

  7. 一种Docker image镜像的取代方案

    在http://openvz.org/Download/templates/precreated中有很多压缩的镜像文件,可以将这些文件下载后采用import方式使用镜像,也可以采用我原来的博文:doc ...

  8. 关于a标签和submit标签

    a如果没有连接“#”:“javascript:void(0)”;或“(胡乱写一堆)” 这两个标签点击都有刷新功能,所以会清空你的数据.

  9. PL/SQL Transaction Control

    PL/SQL 基础 ( 下 )   1. PL/SQL中的 SQL语句 - END语句与COMMIT等内容,没有任何关系. - PL/SQL does not directly support dat ...

  10. Dynamics CRM 2016 的新特性

    新版本CRM (2016 with update 0.1) 发布已有几个月了,总结一下新特性,从几个方面来看: 1. 针对整合功能的新特性 (1) 增加了CRM App for Outlook. 这个 ...