如何将NSMutableDictionary写入Plist文件

3

有人能帮我解决这个问题吗?如何将NSMutableDictionary写入plist文件中...

提前致谢。

5个回答

6

请确保你要写入的pList文件位于合法的位置以便进行编辑,例如应用程序沙盒中的“文档”文件夹。 然后找到该位置的路径(如果存在pList文件,则会被覆盖),并使用以下代码:

[myDictionary writeToFile:path atomically:YES];

请告知您目前进展到哪个阶段,可能还需要提供一些代码或错误信息...


1
这是我的代码: NSMutableDictionary *nameDetails=[[NSMutableDictionary alloc] init]; [nameDetails setValue:username forKey:USERNAME_KEY]; [nameDetails setValue:password forKey:PASSWORD_KEY]; NSString *loginDetails = [[NSBundle mainBundle] pathForResource:@"Login" ofType:@"plist"]; [nameDetails writeToFile:loginDetails atomically:YES]; savedStock = [NSMutableDictionary dictionaryWithContentsOfFile:loginDetails]; - nik

4
[yourDict writeToFile:filePath atomically:YES];

请注意,字典必须包含属性列表对象(即NSDataNSDateNSNumberNSStringNSArrayNSDictionary的实例)。而且字典键必须是NSString对象。

这是我的代码:[nameDetails writeToFile:loginDetails atomically:YES]; - nik
登录详细信息路径是什么?你确定你的字典符合其内容类型的条件吗? - Vladimir

2
问题在于你的应用程序试图将 plist 写入其自己的捆绑包中。你的 plist 应该存储在用户的 Library 中。但是,如果要存储用户的服务凭据,您确实应该使用 Mac OS X 密钥链服务来存储该信息。

1
NSMutableDictionary *nameDetails=[[NSMutableDictionary alloc] init]; 
[nameDetails setValue:username forKey:USERNAME_KEY]; 
[nameDetails setValue:password forKey:PASSWORD_KEY]; 

NSString *loginDetails = [[NSBundle mainBundle] pathForResource:@"Login" ofType:@"plist"]; 
[nameDetails writeToFile:loginDetails atomically:YES];

savedStock = [NSMutableDictionary dictionaryWithContentsOfFile:loginDetails];

1
NSString *pathToPlist = [[NSBundle mainBundle] bundlePath];
pathToPlist = [pathToPlist stringByDeletingLastPathComponent];
pathToPlist = [pathToPlist stringByAppendingPathComponent:@"Documents"];
NSLog(@"%@", pathToPlist; //*
pathToPlist = [pathToPlist stringByAppendingPathComponent:@"Login.plist"];
NSDictionary *nameDetails = @{@"name": @"Albert", @"password": @"emc2"};
[nameDetails writeToFile:pathToPlist atomically:YES];

我们正在将路径记录到控制台中,以便在Finder中查找它。将路径从控制台复制到剪贴板中。然后在Finder的“前往”菜单中选择“前往文件夹...”。将路径粘贴到对话框中,plist所在的文件夹将被打开。然后您可以检查它并确保一切正常运行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接