Ho un percorso file come stringa. Voglio:Come gestire i collegamenti simbolici durante la lettura dei dati da un percorso file in swift
- prova se c'è un file ci
- Leggere il contenuto del file come una stringa
il problema che sto avendo è che a volte che il percorso del file comporta un link simbolico (collegamento simbolico). Forse per il file stesso. Forse per una delle directory sopra il file.
[EDIT] chiudendo perché il seguente codice (che ho iniziato con), funziona davvero bene, c'erano solo più livelli di errore dell'utente coinvolti. Grazie per la gente di input.
func getUserResource(relativeFilePath: String) -> String? {
let fileManager = NSFileManager.defaultManager()
let userFilePath = NSHomeDirectory() + relativeFilePath
if(fileManager.fileExistsAtPath(userFilePath))
{
do {
return try String(contentsOfFile: userFilePath, encoding: NSUTF8StringEncoding);
} catch {
return nil;
}
}
return nil;
}
Ho appena usato il codice per leggere il contenuto di un file di testo tramite un collegamento simbolico (creato con 'ln -s') e ha funzionato. Sei sicuro che questo sia il tuo problema? – Moritz
Inoltre, la tua app è in modalità sandbox? – Moritz
Perché verifichi esplicitamente l'esistenza? Basta provare a leggere il contenuto e gestire il file non trovato come appropriato. – Tali