NSString是不可变的字符串 1、NSString *str1=@"a string"//这种快速创建的方式是不用管理内存的 2、NSString *str2=[[NSString alloc]init]; str2=@"a string2"; [str2 release]; 3、NSString *str2=[[NSString alloc]initWithString:@"a string3"]; [str3 release]; 4、NSString *str4=[[NSString alloc]initWithUTF8String:"a string3"]; [str4 release];//这个是c语言的字符串 5、NSString *str5=[[NSString alloc]initWithFormat:@"a string3"]; [str5 release];//后面的参数都不怎么用 以上方法都是动态方法,都有对应的静态方法,静态方法创建的都不用管理内存
字符串从文件中读取
void test(){
NSString *path=@"/users/apple/deskdop/test.txt";
NSString *str=[NSString stringWithContentsOfFile:path];
NSLog(@"%@",str);//这个方法已经过期了,不能解析中文,所以不用了
}
void test(){
NSString *path=@"/users/apple/deskdop/test.txt";
NSError *error;
NSString *str=[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error];//红色的部分是一个是编码的枚举,这里传的是一个指针的地址
NSLog(@"%@",str);//这个就能正确的解析中文了
//error会自动被复制,当文件读取成功error就会为空,当有错误的时候error就会被复制。
}
oc-Foundation框架-NSString,布布扣,bubuko.com
原文:http://www.cnblogs.com/liyang31tg/p/3610968.html