今天另一个迅速的问题。我正在尝试将用户名和分数发布到文本文件以编译高分列表。我正在使用writeToFile()函数,并且没有错误,在我的断点中,正在到达行并执行OK但我仍然看不到我的score.txt文件中反映的更改。我应该提到score.txt包含在项目的构建路径中......不确定是否会改变任何东西,我想应该提一下。这是我的代码:
import Foundation
import UIKit
class victoryViewController : UIViewController
{
// Define outputs
@IBOutlet weak var submitscorebtn: UIButton!
@IBOutlet weak var scorename: UITextField!
// Define a string to hold the score value
var score = String()
//
// Begin functions
//
override func viewDidLoad() {
super.viewDidLoad()
submitscorebtn.addTarget(self, action: "submitScore:", forControlEvents: UIControlEvents.TouchUpInside)
print(score)
}
//Submit score to DB
func submitScore(sender: UIButton! )
{
var text: String = scorename.text!
text += ","
text += score
print(text)
if let dir : NSString = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.AllDomainsMask, true).first {
let path = dir.stringByAppendingPathComponent("scores.txt");
//writing
do {
try text.writeToFile(path, atomically: false, encoding: NSUTF8StringEncoding)
}
catch {print("Error writing score.")}
}
}
}
答案 0 :(得分:1)
确保您正在查看正确的文件。
您在Xcode中查看的文件位于Mac上的项目目录中。 不与模拟器或iOS设备写入的文件相同。
从Xcode中查找正确的文件有点复杂:打开“设备”视图,选择设备,选择应用程序,打开齿轮弹出窗口并选择“下载容器...”并将其保存在本地。然后,您可以检查下载容器中Documents文档目录的内容,并使用Xcode检查文件内容。