Zum Inhalt springen

c# File.SetLastWriteTime funktioniert nicht richtig


Empfohlene Beiträge

Geschrieben

Hallo

ich hab hier ein kleines problem/phänomen.

Also ich hab ein Dokumentenmanagementsystem und möchte da nun Dateien exportieren und die LastWriteTime setzten. Das Funktioniert für die meisten Dateien auch sehr gut, außer wenn ich .eml-Dateien exportiere. Bei denen wird immer die aktuelle Zeit verwendet.

Der Code sieht folgendermaßen aus:


using (Stream output = System.IO.File.Create(path)) {

   FileUtils.Copy(input, output);

}

System.IO.File.SetLastWriteTime(path, element.FileSystemLastWriteTime);

Wenn ich allerdings vor dem Aufruf des "SetLastWriteTime" ein Thread.Sleep(2500) einbau, wird das Datum korrekt gesetzt. Das ist allerdings nicht tragbar, weil dieser Abschnitt sehr oft aufgerufen wird und dann jedes mal 2,5 sekunden zu warten ist nicht praktikabel.

Hat jemand eine idee, wie man das am geschicktesten lösen kann???

Geschrieben

Hi,

Mir fällt hier auf Anhieb auch nicht viel dazu ein. Jedoch kenne ich eine Lösung, die jedoch nicht besonders schön ist.

Versuche die Sleeptime herrunter zu setzen. Vielleicht reicht ja sogar eine sehr geringe Zeitspanne.

Dies allein ist natürlich immer noch unpraktikabel. Frag doch einfach ab, welche Endung die Dateien haben. Wenn es dieser spezielle Fall ist, dann aktiviere die Sleep.

LG

Geschrieben

Das mit dem 2,5 Sekunden ist leider kein zufälliger Wert. Mir ist das Probelm bei debuggen aufgefallen, weil da sinds ja immer mehrere Sekunden. Ich hab mich dann von 1 millisekunde hochgearbeitet. und i-wann bin ich dann bei den 2,5 sekunden gelandet.

Geschrieben

Welches Betriebssystem? Es gibt einige Fundstellen im Web, die darauf hinweisen, dass Windows Live Mail oder der Indexdienst dafür verantwortlich sein könnte.

Die 2,5 Sekunden rühren vermutlich daher, dass, wer auch immer die Dateien anfasst, danach damit fertig ist. Das ist aber keine dauerhafte Lösung.

Geschrieben

Hab mittlerweile herausgefunden, wer auf die datei zugreift. es ist der windows-explorer. Er fügt der Datei metainformationen hinzu. Es wird auch das outlook-symbol bei den eml-dateien angezeigt.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...