NSFileManager fileExistsAtPath: & collegamenti simbolici
-
02-10-2019 - |
Domanda
Nel mio ~ / / / directory Biblioteca Caches, ho un link simbolico a fascio di mia app, e alcuni link simbolici alle immagini (ad esempio "big_picture.png" è un link simbolico a "small_picture.png"). Quando cerco di verificare se esistono i link simbolici, utilizzando il metodo del fileExistsAtPath:
NSFileManager, restituisce NO
, anche quando il collegamento simbolico esiste, e si collega a un file che esiste pure.
Per quanto ne so, le affermazioni di documentazione di Apple che quello che sto cercando di fare dovrebbe funzionare. Sto facendo qualcosa di sbagliato, o si tratta di un bug?
Soluzione
fileExistsAtPath potrebbe seguire il link simbolico. Forse si può provare un metodo diverso - Usare attributesOfItemAtPath:error:
. Un dizionario verrà restituito se il file esiste, e vi darà la possibilità di controllare il tipo di file. Per fare quest'ultima, fileType
chiamata sul dizionario e controllare contro NSFileTypeSymbolicLink
.