Come controllare l'esistenza del file in standard c++
Esistono numerosi metodi per scoprire se c'è un file, come il seguente:
1: come controllare l'esistenza del file in c ++ usando la funzione stat ()
IL statistica() Il metodo è la tecnica più efficiente e sicura per verificare l'esistenza di file. IL sys/stat.H Il file di intestazione ha una funzione predefinita chiamata statistica. La funzione accetta un percorso e una struttura come parametri, in cui il file o la directory associati metadati, se presenti, sarebbero mantenuti. La funzione restituisce il risultato di 0 se il percorso è legittimo. Verificheremmo il esistenza del file come esempio:
#includereInnanzitutto, la variabile puntatore del file memorizza il percorso del file. Dopodiché, il statistica Il formato del file di intestazione viene utilizzato per inizializzare la struttura vuota. I metadati verrebbero salvati in questo modo. IL funzione stat viene quindi chiamato all'interno della condizione IF. Il risultato sarebbe 0 se il percorso è corretto, il che significa che il file o la directory esistessero; Altrimenti, sarebbe diverso da zero.
Produzione
Nota: Assicurati di sostituire il nome file “C_file.TXT" Con il nome del file che si desidera controllare.
2: come controllare l'esistenza del file in c ++ usando std :: ifstream ()
Utilizzando la funzione Libreria standard C ++ std :: ifstream è un altro metodo per determinare se è presente un file. Un oggetto di flusso che può essere utilizzato per leggere il file viene restituito da questa funzione, che accetta un percorso come input. Per utilizzare questa funzione, lo sviluppatore passerebbe il percorso e il nome del file al costruttore del std :: ifstream classe. Il risultato di farlo è il file aperto correttamente dal costruttore o un'eccezione lanciata. Di conseguenza, se il file viene aperto, lo sviluppatore può presumere che sia presente.
#includereA partire da principale() metodo, un oggetto del ifstream La classe denominata file viene creata per leggere il file di destinazione in seguito. Quando si invoca la funzione Apri sull'oggetto file, il nome del file di destinazione viene quindi fornito come argomento. Questa riga tenterà di aprire il file in modalità di sola lettura.
Poiché un file può essere aperto solo se esiste fisicamente e non può essere accessibile diversamente. Stiamo utilizzando indirettamente il metodo Open () per verificare il l'esistenza di file. Quindi, utilizzando le istruzioni condizionali IF-ELSE, determiniamo se l'oggetto file ha aperto il file o meno; Se ha, ciò significa che si trova sul percorso specificato e visualizziamo un messaggio di successo; Altrimenti, produciamo un messaggio di errore.
Produzione
3: come controllare l'esistenza del file in c ++ usando la funzione fopen ()
Il terzo modo per verificare se un il file esiste è usare la funzione C ++ fopen (). IL fopen () Il metodo crea un flusso e apre il file indicato dal nome file. La variabile di modalità è una stringa di caratteri che indica il tipo di accesso al file che è stato richiesto. Un parametro posizionale precede gli argomenti della parola chiave opzionale nella variabile di modalità.
Possiamo salvare il valore di ritorno dall'esecuzione di fopen () Nel file puntatore quando è finito. Se l'apertura del file ha avuto successo, la funzione fopen (), che mostra se il file era stato precedentemente aperto, produrrà un puntatore del flusso di file che si riferisce al file di destinazione. Se non ha avuto successo, il che indica se il file era già stato, tornerà null. Quindi, se il riferimento del file non è nullo, sappiamo che il file è presente e può produrre un messaggio di successo; Altrimenti, verrà inviato un messaggio di errore.
#includerePer leggere il file, creiamo un puntatore alla classe file a partire dal principale () metodo. Successivamente, usiamo gli argomenti “C_file.TXT" E "R" Per definire il file target e l'azione che vogliamo eseguire su di esso quando eseguiamo il fopen () metodo. 'R' indica che vogliamo leggere il file.
Produzione
Conclusione
Esistono diverse funzioni C ++ da verificare se esiste un file, che sono stat, std :: ifstream E fopen. Dei tre metodi, statistica() La funzione è il modo più rapido e affidabile per controllare le esistenze del file. Mentre altre due funzioni sono utili anche per controllare l'esistenza del file. Pertanto, gli sviluppatori dovrebbero prendere in considerazione l'utilizzo di queste funzioni per prestazioni e affidabilità ottimali durante il controllo dell'esistenza del file.