Überprüfen, ob eine Datei vorhanden ist
-
Ignoriert bitte die letzte Antwort, habe gestern abend wohl zuviel getrunken.
mfG

-
Das sollte funktionieren.
fstream Datei; Datei.open("C:\\test.txt",ios::in); // Datei lesend öffnen if(Datei.fail())MessageBox("Error Can´t Open File!","Error",MB_OK | MB_ICONSTOP); //Wenn die Datei nicht da ist dann ... if(!Datei.fail())MessageBox("File is present!","Exist",MB_OK | MB_ICONINFORMATION); //Wenn die Datei da ist dann ...MFG
RS

[ Dieser Beitrag wurde am 12.02.2003 um 09:55 Uhr von ReneS editiert. ]
-
Besser ist:
CFileFind oFile;
if(oFile.FindFile(strPath))
{
...
}
else
{
...
}Die Funktion FindFile liefer 0 zurück, falls die Datei/ das Verzeichnis nicht vorhanden war.
Ich finde diese Methode eleganter, da ich keine Datei öffnen muss.
Gruß,
Alex
-
habe es jetzt so gemacht:
CFileFind finder; bool result = finder.FindFile(home);man bekommt True oder false zurück
-
Geht auch einfacher (ohne ne Datei öffnen zu müssen und ein extra-Objekt zu erstellen):
bool exist = _access("C:\\file.exe", 0);
-
DerGhost sowas ist scheiße. Dann lieber doch MFC.

-
Original erstellt von DerGhost:
**Geht auch einfacher (ohne ne Datei öffnen zu müssen und ein extra-Objekt zu erstellen):bool exist = _access("C:\\file.exe", 0);**
Ausserdem ist _access kein ANSI-C oder ANSI-C++ hab ich mir sagen lassen...
-
Wieso ist das kein ANSI-C? Wegen dem Unterstrich? Aber das ist doch nur teil des Namens, oder???

Und was ist daran bitte "SCHEISSE"??? Ich seh da kaum was dran dass scheiße wäre!
Und Außerdem hast du, MASTAH, die Funktion selbst hier im Forum mal vorgeschlagen und in dem Thread waren alle hinterher zufrieden
.
-
Original erstellt von DerGhost:
Und Außerdem hast du, MASTAH, die Funktion selbst hier im Forum mal vorgeschlagen und in dem Thread waren alle hinterher zufrieden
.Kann gut sein. Hab die Funktion auch lange verwendet, mir letztens aber sagen lassen (von Bashar oder so) dass die Funktion nicht ANSI ist... Es kann also irgenwann mal Probleme geben bei der Verwendung von _access. muss jeder selber wissen.
-
Ist auch glaub ich UNIX-C...
Wenn du bool benutzt müsste es BTW übrigens heißen...bool bFileExists = _access("C:\\file.exe", 00) + 1; // Es werden -1 für false und 0 für true zurückgegeben deswegen inkrementieren...