如何在NSMutableDictionary上使用writeToFile方法?

时间:2011-09-19 23:59:52

标签: iphone ios ios4 nsdictionary nsmutabledictionary

我想使用仅适用于NSDictionary的方法( writeToFile )到NSMutableDictionary对象。那么,我如何将这个NSMutableDictionary对象转换为NSDictionary?

5 个答案:

答案 0 :(得分:14)

NSMutableDictionary继承自NSDictionary。因此,writeToFile应该可供两个类使用。

答案 1 :(得分:7)

NSMutableDictionary是NSDictionary的子类,因此writeToFile方法应该可用于您的对象,而无需进行任何转换或转换。

答案 2 :(得分:6)

如前所述:

How to save a NSMutableDictionary into a file in documents?

你不需要转换它。

但如果你真的想,只需使用copy上的NSMutableDictionary方法或dictionaryWithDictionary:上的NSDictionary方法。两者都提供NSDictionary的{​​{1}}。

答案 3 :(得分:3)

NSMutableDictionary NSDictionary,因为它是一个子类。通常,子类与其超类的关系称为:“is a”。

答案 4 :(得分:1)

要解决实际的问题标题而不是内容(因为我搜索了这个Q),你实际上可以依靠copyWithZone:来找到一个不可变的词典。

NSMutableDictionary *mutableDict = [[NSMutableDictionary alloc] init];
mutableDict[@"key"] = @"value";
NSDictionary *immutableDict = [mutableDict copy];