2011-10-23 13 views
12

ho usato i codici di seguito per verificare se un file esistecontrollare se un file esiste Objective-C

bool b=[[NSFileManager defaultManager] fileExistsAtPath:filePath]; 

I codici hanno lavorato su IOS.

Ma quando la migrazione a Mac OS X,

Ma ho trovato se il file esiste sul disco con filePath, b restituisce sempre 0, il che significa che il file non esiste.

Mi chiedo se non v'è differenza tra ios e MacOSX

favore qualsiasi commento

risposta

5

Da documenti, penso che si sta utilizzando percorso con tilde

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSFileManager_Class/Reference/Reference.html#//apple_ref/occ/instm/NSFileManager/fileExistsAtPath:isDirectory:

percorso

Il percorso di un file o di una directory. Se il percorso inizia con una tilde (~), deve prima essere espanso con stringByExpandingTildeInPath, altrimenti questo metodo restituirà NO.

tilde rende percorso relativo alla vostra directory home (come /Users/username/)

si può scoprire chiamando NSLog(@"%@",filePath); se filePath è di tipo NSString

+2

filePath è da NSOpenPanel, – monsabre

+7

@monsabre non dovreste' Accetta una risposta che non risponda alla tua domanda e non devi postare un'altra domanda solo perché non hai ricevuto la risposta che ti aspettavi. Accettando una risposta, stai dicendo alla community che il tuo problema è stato risolto. In questo caso, chiaramente non lo era. –

Problemi correlati