黑马程序员---Foundation - NSString
2015-08-09 20:25
447 查看
一个NSString对象就代表一个字符串(文字内容),一般称NSString为字符串类
NSString的创建
最直接的方式(这是常量字符串)
NSString *str=
@"I'min itcast.";
格式化的方式
NSString *str= [NSString
stringWithFormat:@"Myage is %d",10];
NSString *str= [[NSString
alloc]initWithFormat:@"Myage is %d",10];
上面两种创建字符串的区别:堆、栈、常量区域。通过%p查看一下内存地址。
<
4000
p>对于同一个常量字符串,只保存一份。而通过stringWithFormat创建的两个相同的字符串内存中也是两个不同的堆对象。
从文件中读取
// 用来保存错误信息
NSError*error =
nil;
// 读取文件内容
NSString *str= [NSString
stringWithContentsOfFile:@"/Users/mj/Desktop/test.txt"
encoding:NSUTF8StringEncoding
error:&error];
// 如果有错误信息
if(error) {
NSLog(@"读取失败,
错误原因是:%@",[error
localizedDescription]);
} else {
// 如果没有错误信息
NSLog(@"读取成功,
文件内容是:\n%@",str);
}
从URL中读取
//如果目录中没有中文,访问本地文件的时候没有问题。
NSURL *url =[NSURL URLWithString:@"file:///Users/Steve/Desktop/w/o/test.txt"];
NSLog(@“%@”, [url path]); // 输出路径
NSError *err= nil;
NSString *text= [NSString stringWithContentsOfURL:urlencoding:NSUTF8StringEncoding error:&err];
if (err){
//如果出错了。
NSLog(@"出错了。错误信息: %@",text);
}else {
//如果没有错误信息
NSLog(@"%@", text);
}
NSString的存储
可以将NSString存储到一个文件中
NSString *str =@"哇哈哈哈";
[str writeToFile:@"/Users/mj/Desktop/str.txt"
atomically:YES
encoding:NSUTF8StringEncoding
error:nil];
// 注意:使用fileURLWithPath防止目录中有中文
[str writeToURL:[NSURL
fileURLWithPath:@"/Users/mj/Desktop/str.txt"]
atomically:YES
encoding:NSUTF8StringEncoding
error:nil];
atomically : 原子的。如果文件写入不完整,则不会创建文件。
NSString的创建
最直接的方式(这是常量字符串)
NSString *str=
@"I'min itcast.";
格式化的方式
NSString *str= [NSString
stringWithFormat:@"Myage is %d",10];
NSString *str= [[NSString
alloc]initWithFormat:@"Myage is %d",10];
上面两种创建字符串的区别:堆、栈、常量区域。通过%p查看一下内存地址。
<
4000
p>对于同一个常量字符串,只保存一份。而通过stringWithFormat创建的两个相同的字符串内存中也是两个不同的堆对象。
从文件中读取
// 用来保存错误信息
NSError*error =
nil;
// 读取文件内容
NSString *str= [NSString
stringWithContentsOfFile:@"/Users/mj/Desktop/test.txt"
encoding:NSUTF8StringEncoding
error:&error];
// 如果有错误信息
if(error) {
NSLog(@"读取失败,
错误原因是:%@",[error
localizedDescription]);
} else {
// 如果没有错误信息
NSLog(@"读取成功,
文件内容是:\n%@",str);
}
从URL中读取
//如果目录中没有中文,访问本地文件的时候没有问题。
NSURL *url =[NSURL URLWithString:@"file:///Users/Steve/Desktop/w/o/test.txt"];
NSLog(@“%@”, [url path]); // 输出路径
NSError *err= nil;
NSString *text= [NSString stringWithContentsOfURL:urlencoding:NSUTF8StringEncoding error:&err];
if (err){
//如果出错了。
NSLog(@"出错了。错误信息: %@",text);
}else {
//如果没有错误信息
NSLog(@"%@", text);
}
NSString的存储
可以将NSString存储到一个文件中
NSString *str =@"哇哈哈哈";
[str writeToFile:@"/Users/mj/Desktop/str.txt"
atomically:YES
encoding:NSUTF8StringEncoding
error:nil];
// 注意:使用fileURLWithPath防止目录中有中文
[str writeToURL:[NSURL
fileURLWithPath:@"/Users/mj/Desktop/str.txt"]
atomically:YES
encoding:NSUTF8StringEncoding
error:nil];
atomically : 原子的。如果文件写入不完整,则不会创建文件。
相关文章推荐
- 剑指Offer面试题36(Java版):数组中的逆序对
- 黑马程序员---oc block
- Java笔试面试题004
- 程序员的谈判技巧
- 黑马程序员 oc随记 写一个手动内存释放
- 两会最新消息:两会时间看全面深化改革“关键棋”
- 2015公务员工资改革消息:广州人社局长称基层公务员工资肯定会增不少
- Hadoop 之面试题
- 黑马程序员——Java基础---多线程
- 黑马程序员——Java基础语法
- 操作系统面试题整理
- 剑指Offer面试题35(java版):第一个只出现一次的字符
- 黑马程序员——反射2:应用
- 答读者问(5):关于数学程序猿的作用、r \\ u0026研发工作的实践要求和问题,如求职的影响
- 面试准备--java垃圾回收机制、内存管理
- 黑马程序员——反射1:概述
- 剑指Offer面试题34(java版):丑数
- 黑马程序员——正则表达式3:练习
- 黑马程序员——正则表达式2:功能演示
- 如何在面试中发现优秀程序员