Frage

Ich würde müssen lesen und verarbeiten etwas große Datei mit Java und ich würde gerne wissen, ob es irgendeine vernünftige Weg ist, um die Datei zu schützen, wäre es nicht durch andere Prozesse überschrieben werden, während ich lese & Verarbeitung oder?

Das heißt, auf irgendeine Weise macht es schreibgeschützt, hält sie „offen“ oder so ...

Das in Windows-Umgebung durchgeführt werden würde.

br, Touko

War es hilfreich?

Lösung

Sie wollen eine FileLock :

FileChannel channel = new RandomAccessFile("C:\\foo", "rw").getChannel();

// Try acquiring the lock without blocking. This method returns
// null or throws an exception if the file is already locked.
FileLock lock = channel.tryLock();

// ...  

// release it
lock.release();

der Einfachheit halber habe ich ein enclosng Versuch weggelassen / schließlich blockieren, aber Sie sollten nicht in Ihrem Produktionscode

Andere Tipps

Arbeiten meist in Ordnung, einige Probleme bekommen: als Verriegelungs scheint nicht völlig absolute zu sein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top