ios - escribir - cadenas ruby
¿Lee un archivo de texto línea por línea en Swift? (3)
Actualización para Swift 2.0 / Xcode 7.2
do {
if let path = NSBundle.mainBundle().pathForResource("TextFile", ofType: "txt"){
let data = try String(contentsOfFile:path, encoding: NSUTF8StringEncoding)
let myStrings = data.componentsSeparatedByCharactersInSet(NSCharacterSet.newlineCharacterSet())
print(myStrings)
}
} catch let err as NSError {
//do sth with Error
print(err)
}
También vale la pena mencionar que este código lee un archivo que está en la carpeta del proyecto (ya que se usa pathForResource), y no en, por ejemplo, la carpeta de documentos del dispositivo
Acabo de empezar a aprender Swift, obtuve mi código para leer del archivo de texto y la aplicación muestra el contenido del archivo de texto completo. ¿Cómo puedo mostrar línea por línea y llamar a esa línea varias veces?
TextFile.txt contiene lo siguiente.
- Plátano
- manzana
- Pera
- fresa
- arándano
- blackcurrent
lo siguiente es lo que tiene actualmente ...
if let path = NSBundle.mainBundle().pathForResource("TextFile", ofType: "txt"){
var data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: nil)
if let content = (data){
TextView.text = content
}
también si hay otra forma de hacerlo, por favor házmelo saber. Muy apreciado
Probablemente quiera leer todo el archivo de una vez. Apuesto que es muy pequeño.
Pero luego desea dividir la cadena resultante en una matriz, y luego distribuir los contenidos de la matriz entre varios elementos de la IU, como las celdas de la tabla.
Un simple ejemplo:
var x: String = "abc/ndef"
var y = x.componentsSeparatedByString("/n")
// y is now a [String]: ["abc", "def"]
Swift 3.0
if let path = Bundle.main.path(forResource: "TextFile", ofType: "txt") {
do {
let data = try String(contentsOfFile: path, encoding: .utf8)
let myStrings = data.components(separatedBy: .newlines)
TextView.text = myStrings.joined(separator: ", ")
} catch {
print(error)
}
}
La variable myStrings
debería ser cada línea de los datos.
El código utilizado es de: Lectura de archivo línea por línea en iOS SDK escrito en Obj-C y utilizando NSString
Verifique el historial de edición de versiones anteriores de Swift.