Home / Programmazione / Objective-C / Leggere file di testo in Objective-C
Mattepuffo

Leggere file di testo in Objective-C

Leggere file di testo in Objective-C

Può capitare spesso di dover prendere dei dati da un file di testo nelle nostre app per iPhone/iPad.

Farlo in verità è molto semplice.

Aggiungete un file di testo al vostro progetto (file.txt ad esempio) e scriveteci qualcosa dentro.

Poi andate nel file .h del vostro controller:

#import <UIKit/UIKit.h>

@interface MyController: UIViewController {   
    NSString *fileTxt;
    NSString *textFromFile;
}

@end

Due semplici NSString.

Nel file di implementazione andiamo al metodo viewDidLoad:

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSError *err = nil;
    fileTxt = [[NSBundle mainBundle] pathForResource: @"file" ofType: @"txt"];
    textFromFile = [[NSString alloc] initWithContentsOfFile:fileTxt encoding:NSASCIIStringEncoding error:&err];
    NSLog(@"%@", textFromFile);
}

NSBundle rappresenta una locazione nel file system dove ci sono delle risorse che il programma può usare; mainBundle nello specifico rappresenta la posizione dei file eseguibili (la nostra app in sostanza).

Nel metodo pathForResource indichiamo il nome del file (senza estenzione), l'estenzione del file (senza il punto).

Sotto leggiamo il contenuto del file con il metodo initWithContentsOfFile, al quale passiamo il file, la codifica e un oggetto NSError.

Con NSLog leggiamo il risultato.

Quello a cui dovete stare attenti è la codifica del file di testo; qui potete trovare una buona documentazione.