Chinaunix首页 | 论坛 | 博客
  • 博客访问: 53192
  • 博文数量: 34
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 297
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-09 10:52
文章分类

全部博文(34)

文章存档

2015年(23)

2014年(11)

我的朋友

分类: iOS平台

2015-04-02 20:43:00

1.NSString

不可变的字符串

int main(int argc, const char * argv[]) {

    @autoreleasepool {

        //不需要管理内存,不需要释放

        NSString *s1 = @"123";

        //需要释放内存

        NSString *s2 = [[NSString allocinit];

        s2 = @"456";

        [s2 release];

        //需要释放内存

        NSString *s3 = [[NSString alloc]initWithString:@"123"];

        [s3 release];

        //需要释放内存,指向C语言方式的字符串

        NSString *s4 = [[NSString alloc]initWithUTF8String:"123"];

        [s3 release];

        //需要释放内存,可变的字符串

        NSString *s5 = [[NSString alloc]initWithFormat:@"123%d,%f",456,8.9];

        [s5 release];

        //NSLog(@"%@",s5);

        //不需要管理内存会自动释放

        NSString *s6 = [NSString stringWithString:@"123"];

        NSString *s7 = [NSString stringWithFormat:@"123%d,%f",456,8.9];

        NSError *err = nil;

        NSError *err1 = nil;

        NSError *err2 = nil;

        NSString *path = @"/Users/jinhaiyang/Desktop/11";

        //第一种读取文件字符串的方法

        //方法已经过期了,不支持中文

        //NSString *s8 = [NSString stringWithContentsOfFile:path];

        //指定UTF8编码?

        NSString *s8 = [NSString stringWithContentsOfFile:pathencoding:NSUTF8StringEncoding error:&err];

        //err == nil 没有错误

        if(err == nil){

            NSLog(@"---%@---",s8);

        }else{

            NSLog(@"读取失败");

        }

        //2种读取文件字符串的方法

        NSURL *url = [NSURL URLWithString:@"file:///Users/jinhaiyang/Desktop/11"];

        NSString *s9 = [NSString stringWithContentsOfURL:urlencoding:NSUTF8StringEncoding error:err1];

        if(err1 == nil){

            NSLog(@"---%@---",s9);

        }else{

            NSLog(@"读取失败");

        }

        //这种方法也可以读取远程文本

        NSURL *url1 = [NSURL URLWithString:@""];

        NSString *s10 = [NSString stringWithContentsOfURL:url1encoding:NSUTF8StringEncoding error:err2];

        if(err2 == nil){

            NSLog(@"---%@---",s10);

        }else{

            NSLog(@"读取失败");

        }

        

    }

    return 0;


}

2.OC异常不经常使用
3.

//字符串导出

int main(int argc, const char * argv[]) {

    @autoreleasepool {

        

        NSString *s = @"123哇哇哇哇哇哇哇";

        NSString *path = @"/Users/jinhaiyang/Desktop/22";

        NSError *err = nil;

        //atomically

        //YES 原子性  先创建一个临时文件,把字符串先放到临时文件 然后给目标文件

        //NO  非原子性 直接给目标文件

        //如果文件不存在他会帮我们自动创建一个文件

        //如果目录不存在,则返回失败

        //编码格式有误,也会返回失败

        [s writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&err];

        

        if(err == nil){

            NSLog(@"%@",s);

            

        }else{

            //只是报错主要的信息

            NSLog(@"读写错误-%@",[err localizedDescription]);

        }

    }

    return 0;

}

阅读(572) | 评论(0) | 转发(0) |
0

上一篇:OC基础篇-1

下一篇:OC基础篇-3

给主人留下些什么吧!~~