【发布时间】:2021-03-06 13:55:14
【问题描述】:
我正在尝试在 xcode 中写入 plist。我写的作品,除了 plist 文件没有改变。我已经尝试了几种不同的实现,并达到了相同的结果。
代码如下:
func saveGameData() {
let BedroomFloorKey = "BedroomFloor"
let BedroomWallKey = "BedroomWall"
var bedroomFloorID: AnyObject = 101 as AnyObject
var bedroomWallID: AnyObject = 101 as AnyObject
let paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true) as NSArray
let documentsDirectory = paths.object(at: 0) as! NSString
let path = documentsDirectory.appendingPathComponent("room.plist")
print("PATH", path)
let dict: NSMutableDictionary = ["XInitializerItem": "DoNotEverChangeMe"]
//saving values
dict.setObject(bedroomFloorID, forKey: BedroomFloorKey as NSCopying)
dict.setObject(bedroomWallID, forKey: BedroomWallKey as NSCopying)
//...
//writing to GameData.plist
dict.write(toFile: path, atomically: false)
let resultDictionary = NSMutableDictionary(contentsOfFile: path)
print("Saved GameData.plist file is --> \(resultDictionary?.description ?? "")")
}
我的 plist 位于我的 xcode 项目的主目录中,与 ViewController 所在的文件夹相同。
谢谢
【问题讨论】:
-
“我写的东西有效,除了 plist 文件没有改变。” 那么它究竟是如何“工作”的呢?
print("PATH", path)行是否打印出您期望的内容?