繁体   English   中英

Mac OS X WriteToFile无法使用XCode5

[英]Mac os x writeToFile not working using xcode5

我正在尝试修改plist并保存更改,但是它不起作用:

这是我的代码:

        NSString *myPath = [[NSBundle mainBundle] pathForResource:@"myPlist" ofType:@"plist"];
        NSMutableDictionary *plistDict;
NSMutableArray *array = [[NSMutableArray alloc]initWithArray:[plistDict objectForKey:@"$objects"]];
        for (int i =0 ; i <array.count; i++)
        {
            if ([[array objectAtIndex:i] isKindOfClass:[NSString class]])
            {
                if ([[array objectAtIndex:i] isEqualToString:@"myString"])
                {
    [[plistDict objectForKey:@"$objects"]replaceObjectAtIndex:i withObject:@"newString"];

    }
    }
    }
     NSString *root = @"/Users/myUser/Desktop/newPlist.plist";
        [plistDict writeToFile:root atomically:YES];

内容的字典已被修改,我没有任何错误,但是从未在路径中创建文件。 你们当中有人知道我在做什么错吗? 或如何解决?

我怀疑您正在写入沙盒位置。 实际上不是到用户目录。

请参考以下代码:

NSMutableDictionary *plistDict=//assuming your data
        NSString *root = @"/Users/home/Desktop/newPlist.plist";
    if (![[NSFileManager defaultManager]fileExistsAtPath:root])//checking fileexist or not 
    {
//if not exist creating the same 
        [[NSFileManager defaultManager]createFileAtPath:root contents:nil attributes:nil];
        [plistDict writeToFile:root atomically:YES];
    }
    else
    {
    [plistDict writeToFile:root atomically:YES];
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM