【问题标题】:How to read and parse a plist如何读取和解析 plist
【发布时间】:2013-12-27 20:13:28
【问题描述】:

我喜欢阅读和解析 plist 文件,但它不会工作。

这是我的代码:NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:self.plistPath]; dict 总是 (null)

我尝试将内容作为字符串获取,这是我的代码:

NSString *string = [[NSString alloc] initWithData:[NSData dataWithContentsOfFile:self.plistPath] encoding:NSUTF8StringEncoding];

self.plistPath is /tmp/com.apple.audio.hogmode.plist

这是 plist 的内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

我做错了什么?

【问题讨论】:

  • 文件内容是什么?你确定是代表字典的属性列表吗?
  • 请显示 self.plistPath 值或您用于创建它的代码。
  • 我已经用你的 plist 内容测试了你的代码,结果是一个空字典,正如人们所期望的那样。

标签: ios nsdictionary plist


【解决方案1】:

想通了!

NSString *error;
NSPropertyListFormat format;
NSDictionary *dict = [NSPropertyListSerialization propertyListFromData:[NSData dataWithContentsOfFile:self.plistPath] mutabilityOption:NSPropertyListImmutable format:&format errorDescription:&error];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多