PDA

View Full Version : quale funzione usare x vedere se esiste un file?


khri81
10-05-2005, 10:21
dato nome directory, nome file, quale funzione posso usare x vedere se il file esiste dentro alla dir???

linguaggio c.

ciao.

VICIUS
10-05-2005, 10:42
stat (...);

ciao ;)

DanieleC88
11-05-2005, 20:01
Scusa VICIUS, ma non bastava verificare il valore ritornato da fopen()? Stat è un po' più complicato.

VICIUS
11-05-2005, 20:09
Scusa VICIUS, ma non bastava verificare il valore ritornato da fopen()? Stat è un po' più complicato.
Se apri il file poi lo devi anche chiudere e stare attento che poi questo non venga creato. Stat è pensata apposta per avere informazioni su file e directory quindi è sicuramente piu efficente.

ciao ;)

DanieleC88
11-05-2005, 20:20
Se apri il file poi lo devi anche chiudere e stare attento che poi questo non venga creato. Stat è pensata apposta per avere informazioni su file e directory quindi è sicuramente piu efficente.

ciao ;)
Ah... non ci avevo pensato! Ma, in ogni caso, fopen() è più "standard". stat() non è una chiamata specifica di Linux?

71104
11-05-2005, 20:22
se sei in Win32 è più comoda GetFileAttributes: se fallisce vuol dire che il file non esiste (o che non puoi conoscerne l'esistenza, che è lo stesso)

VICIUS
11-05-2005, 20:23
Ah... non ci avevo pensato! Ma, in ogni caso, fopen() è più "standard". stat() non è una chiamata specifica di Linux?
non sono sicuro al 100% ma dovrebbe essere standard POSIX.

ciao ;)

DanieleC88
11-05-2005, 20:31
non sono sicuro al 100% ma dovrebbe essere standard POSIX.

ciao ;)
Infatti, ora che mi leggo "man 2 stat" parla di POSIX e standard X/Open, BSD... vabbe', ho sbagliato ancora una volta... ;)

D4rkAng3l
12-05-2005, 17:12
dato nome directory, nome file, quale funzione posso usare x vedere se il file esiste dentro alla dir???

linguaggio c.

ciao.
booo credo che fai fopen(), se ritorna NULL non c'è...però è anche vero che il file potrebbe esistere ma potrebbe non riuscire ad aprirlo per cqualche motivo...forse (non vorrei dire una cavolata) se te vuoi fare un programma che deve poter verificare se esiste un qualsiasi tipo di file...fopen potrebbe avere problemi ad aprire alcuni file per via delle modalità di apertura scelte che potrebbero risultare incompatibili con il file in questione....ma boooo non sò.....fatemi sapere...interessa anche a me :)

DanieleC88
12-05-2005, 20:16
booo credo che fai fopen(), se ritorna NULL non c'è...però è anche vero che [...] incompatibili con il file in questione....ma boooo non sò.....fatemi sapere...interessa anche a me :)
Ehm... mi pare che VICIUS abbia già risposto in modo soddisfacente. :)