1.Objective-C语言中定义字符串的几种方式
1 void stringCreate() 2 { 3 //c语言方式 4 // char *s="A string!"; 5 6 //第一种方式 7 NSString *str11=@"A String!"; //这种方式创建出来的是不需要释放内存 8 //第二种方式 9 NSString *str22=[[NSString alloc] init]; 10 str22=@"A string"; 11 //释放 12 //[str2 release]; 13 14 //第三种方式 15 NSString *str3=[[NSString alloc] initWithString:@"A String!"]; 16 17 //这种方式不需要管理内存,因为没有alloc 18 str3=[NSString stringWithString:@"A String!"]; 19 //释放 20 //[str3 release]; 21 22 //第四种方式 23 NSString *str4=[[NSString alloc] initWithUTF8String:"A String!"]; 24 //释放 25 //[str4 release]; 26 str4=[NSString stringWithUTF8String:"A String!"]; 27 28 29 //第五种方式 30 NSString *str5=[[NSString alloc] initWithFormat:@"My age is %i and height is %.2f",19,1.55f]; 31 32 NSLog(@"str5 is %@",str5); 33 //释放 34 //[str5 release]; 35 NSString *str6=[NSString stringWithFormat:@"My age is %i and height is %.2f",19,1.55f]; 36 37 }
2.Objective-C中从文件中(例如*.txt中读出内容)。
1 void stringCreate2() 2 { 3 4 5 //从文件中读取文本 6 NSString *path=@"/Users/haiyefeng/Desktop/test.txt";//这里有不同的编码方式和解码方式 7 NSString *str1=[NSString stringWithContentsOfFile:path]; 【1】这里标红的是传输方式,也就是以文件类型 8 NSLog(@"%@",str1);
3.Objective-C 中对文件的读取如果不能读取所使用抛异常的方式。
【1】首先要定义一个error来作为存储错误,如果error有值,那就是有错,没值,就没错。
【2】定义一个字符串地址path来保存文件路径。
【3】通过 NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error1 来读取是否能读取
【4】通过下面的判断,如果error有值,就有错,否则没有。
1 //抛异常 2 //定义一个error变量,主要来用来判断是否异常,如果=0,就是没有错,有值就是有错; 3 4 NSString *path=@"/Users/haiyefeng/Desktop/test.txt";
5 NSError *error1; 6 NSString *str3=[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&error1]; 7 // stringWithContentsOfFile 的意思是文件的路径 NSUTF8StringEncoding 是文件的编码方式 error 是传入的错误,后面的变量要传入指针地址 8 if(error1==nil) 9 { 10 NSLog(@":读取文件成功%@:",str3); 11 12 }else 13 { 14 NSLog(@"读取文件失败%@",error1); 15 } 16
4.objective-C读取文件
NSURL *url=[NSURL URLWithString:@"file:///Users/haiyefeng/Desktop/test.txt"]; 4 NSString *str2=[NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil]; 5 NSLog(@"%@",str2);
5.Objective-C读取网页
1 void stringCreate3() 2 { 3 6 7 //读取网页 8 NSURL *url2=[NSURL URLWithString:@"http://www.baidu.com"]; 9 NSString *str3=[NSString stringWithContentsOfURL:url2 encoding:NSUTF8StringEncoding error:nil]; 10 NSLog(@"%@",str3); 11 12 13 14 }
6.Objective-C中将内存地址的内容改变。
void test(NSString **str) 【3】通过传入指针地址的指针地址来改变指针的内容。 { (*str)=@"123"; 【4】将指针地址内容改变为123 } int main(int argc, const char * argv[]) { @autoreleasepool { //这里是改变字符串内容, NSString *s=@"456"; 【1】首先创建一个指针s指向内容为456的字符串 test(&s); 【2】调用test方法,将s的地址传入上面的方法。 NSLog(@"%@",s); 【5】输出,那就是改变了*s的内存地址了。 } return 0; }
原文:http://www.cnblogs.com/madeininfi/p/3535921.html