微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

iOS 8 Swift阅读Plist

我想从plist文件中读取整数值.我有以下代码

let path = NSBundle.mainBundle().pathForResource("savedState",ofType: "plist")
let dict = NSDictionary(contentsOfFile: path!)
let players: AnyObject = String(dict.valueForKey("players") as Nsstring)
let level: AnyObject = String(dict.valueForKey("level") as Nsstring)
let numPlayers = Int(players as NSNumber)
let playLevel = Int(level as NSNumber)

让玩家:让级别:崩溃我的应用程序.我知道这应该很简单 – 我只是想不出怎么做.

解决方法

你可能正在寻找这样的东西:

let path = NSBundle.mainBundle().pathForResource("savedState",ofType: "plist")
let dict = NSDictionary(contentsOfFile: path!)
let players = dict.valueForKey("players") as? String
let level = dict.valueForKey("level") as? String
let numPlayers = players != nil ? players!.toInt() : 0
let playLevel = level != nil ? level!.toInt() : 0

它试图从plist中读取播放器和级别作为可选字符串,然后如果它们不是nil,则将numPlayers和playLevel设置为它们的Int值.如果它们是nil numPlayers并且playLevel设置为0.虽然如果你的plist值是整数,为什么不把它们作为Ints读取?

let players = dict.valueForKey("players") as? Int
let level = dict.valueForKey("level") as? Int

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐