Seite 1 von 1

Abfrage ob Datei exisiert, wenn nicht nochmal prüfen

Verfasst: Samstag 21. Oktober 2006, 09:48
von Bacopilot
Hallo,
ich hab ein kleines Problem. Wie kann ich die Existenz einer Datei prüfen und dabei beachten, das wenn diese nicht vorhanden ist (sie wird von einem anderen Rechner in unbestimmter Zeit kopiert), er das ganze noch einmal überprüfen soll (in einer Schleife). Wenn sie dann da ist, soll weiteren Programmcode fortgefahren werden.

Vielen Dank
Bacopilot

Verfasst: Samstag 21. Oktober 2006, 10:41
von murph
die lösung heißt

Code: Alles auswählen

import os.path
if os.path.isfile(deine_datei):
    ...
sonst einfach das schreiben, was du schon sagtest.

Verfasst: Samstag 21. Oktober 2006, 12:55
von BlackJack
Dazu vielleicht noch `time.sleep()` in der Schleife benutzen damit nicht 100% Prozessorzeit für den Test verbraucht wird.

Man muss aber aufpassen das eine existierende Datei nicht automatisch bedeutet, das die auch komplett ist. Der andere Prozess kann ja durchaus gerade noch mit kopieren beschäftigt sein.

Verfasst: Samstag 21. Oktober 2006, 20:11
von SigMA
um das von Blackjack aufgeworfene Problem zulösen solltest du vllt. immer die md5 Sum testen oder die Größe der Datei (wird dann einfach vorher genieriert / übergeben) und das testet du dann einfach immer mit

SigMA

Verfasst: Samstag 21. Oktober 2006, 21:37
von BlackJack
Eine andere Lösung wäre das die Datei erst einmal unter einem temporären Namen geschrieben und wenn sie komplett ist umbenannt wird.