NSBundle下的文件是可读不可写的

记得之前在http://blog.csdn.net/duxinfeng2010/article/details/7694233上回复了,博客博主的问题,他在代码中:

  1.     NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"testInfo" ofType:@"plist"];      
  2.     NSMutableDictionary *data=[[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];   
  3.      NSLog(@"%@",data);     
  4.     [data setObject:@"test1" forKey:@"key1" ];  
  5.     [data setObject:@"test2" forKey:@"key2"];    
  6.     [data writeToFile:@"testInfo.plist" atomically:YES];  

然后他在程序的目录下,查看它的testInfo.plist发现没有内容;


然后我说他这句:    [data writeToFile:@"testInfo.plist" atomically:YES];  写入文件的路径已经发生了改变,导致在程序中查看testInfo.plist没有内容;


其实是根本没有写入到那里去,因为在NSBundle下的文件都是只可以读取而不可以写入的,所以很多文件的处理都得用到沙盒文件;呵呵~ 终于解决了  可以验证:

 if ([data writeToFile:@"testInfo.plist" atomically:YES])

    {

        NSLog(@"写入成功");

    }else

    {

        NSLog(@"这个目录下只可以读取哦");

    }


关于NSBundle的用法参考: http://blog.csdn.net/bihailantian1988/article/details/7703358


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值