Überprüfen, ob eine Datei existiert, ohne es zu öffnen

Wie kann ich überprüfen, ob eine Datei existiert in meinem Verzeichnis, bevor Sie fortfahren mit meinem Programm? Ich habe gelesen, Antworten, öffnen Sie die Datei mit verschiedenen Methoden, aber mein Problem ist, dass die meisten der Zeit, die Datei, die ich bin überprüfung für beschädigt und kann nicht geöffnet werden. Dies geschieht in der error-checking-Teil von meinem Programm und wird nur dann ausgelöst, wenn ein Fehler im obigen code aufgetreten ist. Ich möchte überprüfen, ob die Datei existiert, wenn ja dann bitten, es zu löschen, ansonsten einfach drucken Sie eine Nachricht.

Wie kann ich dies angehen?

(Nur löschen und akzeptieren Sie die Fehler funktionieren würde, aber ich bin dabei zu lernen, damit ich es richtig machen willst...)

Edit:

Habe ich heruntergeladen Boost verwenden des Dateisystem-Bibliothek und habe es kompiliert, scheinbar ohne Fehler, aber wenn ich versuche, um mein Programm zu kompilieren, bekomme ich diese Antwort:

g++ program.cpp -I <path to>/boost_1_54_0 -o output

Undefined symbols for architecture x86_64:
"boost::filesystem::detail::status(boost::filesystem::path const&, boost::system::error_code*)", referenced from:
  boost::filesystem::exists(boost::filesystem::path const&)in cc1XX8rD.o
"boost::system::system_category()", referenced from:
  __static_initialization_and_destruction_0(int, int)in cc1XX8rD.o
"boost::system::generic_category()", referenced from:
  __static_initialization_and_destruction_0(int, int)in cc1XX8rD.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

Nur die Orte, die ich verwenden boost im Programm sind:

boost::filesystem::path my_file(s4);
if (boost::filesystem::exists(my_file)){ ...
  • Kann Sie einfach nicht (versuchen zu) löschen Sie die Datei sowieso und tolerieren Fehler, ausgelöst durch die Löschung versuchen, falls es nicht vorhanden ist?
InformationsquelleAutor Sam | 2013-08-07
Schreibe einen Kommentar