普通的创建字符串:

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~ ~

最新文章

  1. 进击的Python【第十七章】:jQuery的基本应用
  2. 浅谈Web缓存
  3. 高性能JS笔记4——算法和流程控制
  4. iOS:集成支付宝支付
  5. Linux创建用户并赋予Root权限
  6. js获取数组中的最大值最小值
  7. effective c++:virtual函数的替代方案
  8. redis基本用法
  9. Problem 1183 - 排列
  10. 页面样式base.css
  11. SilkTest Q&A 4
  12. 从GO内存模型与调用协议理解defer closure的坑
  13. MQTT 单个订阅消息量过大处理
  14. [Android] Android读取Asset下文件的最简单的方法总结(用于MediaPlayer中)
  15. lvs基础及部署
  16. lua闭包实现迭代器遍历数组
  17. js中用来操作字符串的相关的方法
  18. 牛客训练三:处女座和小姐姐(三)(数位dp)
  19. 前端常用功能记录(二)—datatables表格(转)
  20. meta viewport 理解

热门文章

  1. Team Foundation Server 15 功能初探
  2. Jetty使用攻略
  3. 【CSS】使用CSS选择器
  4. ural Cipher Message
  5. Hibernate批量处理数据、HQL连接查询
  6. loadView加载(变换成ScrollView)
  7. charCode与keyCode的区别
  8. IE8以下不支持getElementsByClassName方法
  9. [Cache] C#操作缓存--CacheHelper缓存帮助类 [复制链接]
  10. 封装jQuery Validate扩展验证方法