Ich versuche, eine Datei zu erstellen und die Datei zu aktualisieren, indem ich eine Zeichenfolge am Ende jedes Mal hinzufüge, wenn ich die Schaltfläche zum Speichern drücke. Jedes Mal, wenn ich auf Speichern klicke, wird jedoch eine neue Datei (überschreibt) mit der neuesten Zeichenfolge erstellt. Mein Code ist unten, wie kann ich es beheben? bitte hilfe!NSFileHandle updateatPath Wie kann ich Dateien aktualisieren anstatt sie zu überschreiben?
func pathToDocsFolder() -> String {
let pathToDocumentsFolder =NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as NSString
return pathToDocumentsFolder.stringByAppendingPathComponent("/log.csv")
}
@IBAction func saveSample(sender: AnyObject) {
let string = LabelText + ";" + SampleNoOne.text! + ";" + fromOne.text! + ";" + toOne.text! + ";" + casingBlowsOne.text! + ";"
let data = string.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!
let filemanager = NSFileManager.defaultManager()
if filemanager.fileExistsAtPath(pathToDocsFolder()){
filemanager.createFileAtPath(pathToDocsFolder(), contents: data, attributes: nil)
}
let fileHandle = NSFileHandle.init(forUpdatingAtPath: pathToDocsFolder())
fileHandle!.seekToEndOfFile()
fileHandle!.writeData(data)
fileHandle!.closeFile()
Warum erstellen Sie die Datei, wenn sie existiert? Ich denke du meinst nur die Datei zu erstellen, wenn sie nicht existiert. – rmaddy