Domanda

Sto cercando di aprire un piccolo file di testo per testare alcune funzioni NSFileHandle sul file. Tuttavia non riesco a capire come farlo, se potessi dirmi cosa mi manca sarebbe fantastico.

//.h

@interface MainViewController : UIViewController <FlipsideViewControllerDelegate> {
    NSFileHandle *nCode;
}
@property (nonatomic, retain) IBOutlet NSFileHandle *nCode;

- (IBAction)showInfo:(id)sender;

//check for code
- (void)fetchCode:(id)sender; //this function is attached to a button in the .nib

@end

//.m

- (void)fetchCode:(id)sender{
nCode = [NSFileHandle fileHandleForReadingAtPath:@"nCode01.txt"];

if (nCode == nil) {
    NSLog (@"Open of nCode for reading failed\n");
    return;
}

 [nCode closeFile];
}

Tutto quello che sto facendo qui è provare ad aprire il file, tuttavia ogni volta che premo il pulsante recivo il messaggio di errore "Apri di ncode per la lettura non riuscita" ... cosa sto facendo di sbagliato?

Da questo spero di trovare un modo per lasciare che l'utente inserisca un numero che rappresenta una riga nel file di testo e quindi restituire il testo che si trova in quella riga. Dose qualcuno sa un modo di farlo? È possibile?

È stato utile?

Soluzione

Molto probabilmente il problema è il percorso del file poiché non si specifica un nome completo. Quando si desidera accedere a un file all'interno del pacchetto applicazione, usa -[NSBundle pathForResource:ofType]:

NSString *path = [[NSBundle mainBundle] pathForResource:@"nCode01"
                                                 ofType:@"txt"];
nCode = [NSFileHandle fileHandleForReadingAtPath:path];
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top