黑马程序员——Foundation之NSString和NSMutableString
------Java培训、Android培训、iOS培训、Net培训、期待与您交流!------
在OC中NSString是一个非常重要的字符串类;和C语言的字符串不用的是,C语言的字符串是用双引号括住如“jack”;而OC中的字符串则要以@开关如:@“jack”.
NSString是一个不可变的字符串,创建好后里面的内容是不能更改的。不过它还有一个子类NSMutableString,这个类中的字符串是可以修改的如增添或删除。
一、NSString字符串的创建方式:
1.NSString*s1=@"jack";
2.NSString*s2=[[NSString alloc] initWithString:@"rose"];
3.NSString*s3=[[NSString alloc] initWithFormat:@"age is %d",10];
二、C字符串可以转化为OC字符串
NSString*s4=[[NSString alloc]initWithUTF8String:"jack"];
三、OC字符串也可以转为C字符串
Const char*cs=[s4 UTF8String];
四、可以将字符串导出到某路径下的文本中(NSUTF8StringEncoding 用到中文就可以用这种编码)
[@"jack" writeToFile:@"/users/apple/Desktop/my.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
五、可以通过URL将字符串导出到路径,或从某路径读取文件内容
1.字符串的导出
NSString*str=@"123456"; //创建一个字符串
NSURL*url=[NSURL fileURLWithPath:@"/users/apple/Desktop/my2.txt"]; //设置路径
[str writeToURL:url atomically:YES encoding:NSUTF8StringEncoding error: nil];//将字符串导出到路径中
2.字符串的读取
NSURL*url=[NSURL fileURLWithPath:@"/users/apple/Desktop/my2.txt"]; // 设置路径
NSString*s=[[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error: nil]; //读取路径下的内容并保存在s中。
NSLog(@"%@",s); //打印字符串s的内容
六、NSMutableString
1.字符串的拼接
NSMutableString*s1=[NSMutableString stringWithFormat:@"my age is 20"];//创建可变字符串对象
[s1 appandString:@"11 12"]; //将@“11 12”拼接到@“my age is 20”后面。
2.字符串的删除
NSRange range=[s1 rangeOfString:@"is"]; // 获取is的范围
[s1 deleteCharactersInRange:range]; //删除is
---------------------- <a target="blank">ASP.Net+Unity开发</a>、<a target="blank">.Net培训</a>、期待与您交流! ----------------------
黑马程序员——Foundation之NSString和NSMutableString的更多相关文章
- 黑马程序员——Foundation中的OC结构体
<span style="font-size:14px">------<a target="_blank" href="http:/ ...
- 黑马程序员—C语言的函数、数组、字符串
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.函数 定义:函数是代码复用的一种机制. 函数的基本语法: 返回类型 函数名 ( 参数类型 参 ...
- 黑马程序员——【Java高新技术】——代理
---------- android培训.java培训.期待与您交流! ---------- 一.“代理概述”及“AOP概念” (一)代理概述 1.问题:要为已存在的多个具有相同接口的目标类的各个方法 ...
- 黑马程序员+SQL基础(上)
黑马程序员+SQL基础 ---------------<a href="http://edu.csdn.net"target="blank">ASP ...
- 黑马程序员+Winform基础(上)
黑马程序员+Winform基础 ---------------<a href="http://edu.csdn.net"target="blank"> ...
- 黑马程序员:Java基础总结----泛型(高级)
黑马程序员:Java基础总结 泛型(高级) ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 泛型(高级) 泛型是提供给javac编译器使用的,可以限定集合中的输入类型 ...
- 黑马程序员:Java基础总结----类加载器
黑马程序员:Java基础总结 类加载器 ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 类加载器 Java虚拟机中可以安装多个类加载器,系统默认三个主要类加载器,每个 ...
- 黑马程序员:Java基础总结----静态代理模式&动态代理
黑马程序员:Java基础总结 静态代理模式&动态代理 ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 静态代理模式 public class Ts { ...
- 黑马程序员:Java基础总结----枚举
黑马程序员:Java基础总结 枚举 ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 枚举 为什么要有枚举 问题:要定义星期几或性别的变量,该怎么定义?假设用1-7分别 ...
随机推荐
- Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
一.搭建Android开发环境 准备工作:下载Eclipse.JDK.Android SDK.ADT插件 下载地址:Eclipse:http://www.eclipse.org/downloads/ ...
- java基础篇---I/O技术
java基础篇---I/O技术 对于任何程序设计语言而言,输入输出(I/O)系统都是比较复杂的而且还是比较核心的.在java.io.包中提供了相关的API. java中流的概念划分 流的方向: 输 ...
- aopalliance.jar —— 下载地址
下载地址:http://sourceforge.net/projects/aopalliance/files/aopalliance/1.0/aopalliance.zip/download TIPS ...
- YTU 2614: A代码完善--系统日期
2614: A代码完善--系统日期 时间限制: 1 Sec 内存限制: 128 MB 提交: 216 解决: 113 题目描述 注:本题只需要提交填写部分的代码,请按照C++方式提交. 已知某操作 ...
- 用Eclipse+ADT创建可运行项目,创建lib项目,引用一个lib项目
Managing Projects from Eclipse with ADT In this document Creating an Android Project 创建可运行项目 Settin ...
- Post的请求案例
1.简单的post请求案例 $.post(rootPath+"/jasframework/loginLog/getStatisticsInfoByUserId.do",functi ...
- 为Gradle添加tomcat插件,调试WEB应用
Gradle提供了不输于maven的依赖管理 提供了强大的test功能,输出优美的测试报告 并且提供war插件,使用内置的jetty调试WEB应用 因为博主偏偏钟情于tomcat,所以希望使用tomc ...
- spring mvc 自定义转换器
<!-- 注册转化器 --> <mvc:annotation-driven conversion-service="conversionService" /> ...
- LA 3177 长城守卫
n为偶数的时候比较简单,就是相邻两个守卫的礼物和的最大值. 首先这是个下限,其次这个值也满足题目要求,所以这就是答案了. 当n为奇数的时候上限是守卫索要礼物的最大值的三倍. 这也很容易理解,比如n=5 ...
- 51nod1125 交换机器的最小代价
跟做过的bzoj一道置换群的题几乎一样,只是数据范围大了点,那么就用map就好了... #include<cstdio> #include<cstring> #include& ...