Dopo aver cercato tra le molte (molte!) Domande del parco giochi rapido persino per creare il codice questo codice, sto ancora lottando.Leggi il file in rapido, parco giochi iOS
Ho inserito un file di testo nella cartella Resources
del contenuto del pacchetto e appare come un alias (collegamento) nei file temporanei in esecuzione generati dal parco giochi (/var/folders/ ...
).
import UIKit
let bundle = NSBundle.mainBundle()
let myFilePath = bundle.pathForResource("dict1", ofType: "txt")
println(myFilePath) // <-- this is correct, there is a shortcut to the Resource file at this location
var error:NSError?
var content = String(contentsOfFile:myFilePath!, encoding:NSUTF8StringEncoding, error: &error)
println(content!) // <-- this is *NOT* the file contents [EDIT: see later note]
// Demonstrate there's no error
if let theError = error {
print("\(theError.localizedDescription)")
} else {
print("No error")
}
Il problema è, che content
viene mostrato nell'output parco giochi come Some "apple\ngame\nhow\nswift\ntoken"
, piuttosto che il contenuto del file come previsto.
Sta trovando il file, perché se cambio il nome file, si sbaglia. Qualche consiglio su come ottenere il contenuto del file?
Xcode 6.1
EDIT: Così, l'attuale problema era che non mi aspettavo l'uscita parco giochi (tra cui, println
) per essere sfuggito. Questo, combinato con la stanchezza e altre stupidaggini, mi ha portato a credere che ci fosse un problema, quando nessuno esisteva.
È interessante notare che non tutto sembra essere sfuggito a un parco giochi:
println("foo\nbar") // Outputs "foo\nbar", escaped
println("\\n") // Outputs "\n", unescaped
Questo codice funziona bene per me se metti un file 'dict1.txt' nella posizione appropriata. Cosa c'è nel tuo file 'dict1.txt' e in che cosa differisce da ciò che vedi nella variabile' content'? –
@MikeS, è incredibile come la tua semplice domanda mi ha portato alla (ovvia) risposta. Sì, ovviamente 'content' corrisponde al file. Non dovrei mai code stanco. Ciò che mi ha respinto è stato il '\ n'' fuggito, che ha reso il contenuto simile a un percorso. – alttag
Mentre sto imparando, l'output di playground di 'println'! = L'output della console di' println'. Maggiori informazioni sulla console [a questa domanda] (http://stackoverflow.com/questions/24277848/how-to-reopen-console-output-in-a-swift-playground). – alttag