gpt4 book ai didi

ios - NSDictionary initWithContentsOfFile:仅获取空对象

转载 作者:行者123 更新时间:2023-12-01 17:55:34 25 4
gpt4 key购买 nike

我保存这样的NSDictionary:

 NSDictionary *menuList = [[NSDictionary alloc]initWithDictionary:xmlParser.items];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *directory = [paths objectAtIndex:0];
NSString *fileName = [NSString stringWithUTF8String:MENU_LIST_NAME];
NSString *filePath = [directory stringByAppendingPathComponent: fileName];
[menuList writeToFile:filePath atomically:YES]

如所看到的,字典中应该填充了数据。

我从这样的文件中读取:
NSArray  *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *directory = [paths objectAtIndex:0];
NSString *fileName = [NSString stringWithUTF8String:MENU_LIST_NAME];
NSString *filePath = [directory stringByAppendingPathComponent:fileName];
NSDictionary *theMenu = [[NSDictionary alloc] initWithContentsOfFile:filePath];

但是在这里我只得到空的对象:

我只是无法找到解决方案。请帮忙。谢谢。
编辑:文件内容(似乎正确写入)
<dict>
<key>left</key>
<array>
<dict>
<key>id</key>
<string>1</string>
<key>level</key>
<string>1</string>
<key>link</key>
<string>
LoginActivity</string>
<key>linkType</key>
<string>internal</string>
<key>state</key>
<string>ANY</string>
<key>title</key>
<string>


Login</string>
<key>visible</key>
<true/>
</dict>
etc....

最佳答案

您的文件似乎不是正确的plist。
从文档中:

initWithContentsOfFile:使用初始化新分配的字典
在给定路径的文件中找到的键和值。

必须使用路径标识的文件中的字典表示形式
仅包含属性列表对象
(NSString,NSData,NSDate,
NSNumber,NSArray或NSDictionary对象)。有关更多详细信息,请参见
属性列表编程指南。包含的对象
即使字典是可变的,字典也是不可变的。

关于ios - NSDictionary initWithContentsOfFile:仅获取空对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18361265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com