Devo essere in grado di simulare 'tail -f' con Java. Sto provando a leggere un file di registro mentre viene scritto da un altro processo, ma quando apro il file per leggerlo, blocca il file e l'altro processo non può più scrivere su di esso. Qualsiasi aiuto sarebbe molto apprezzato!Java: apertura e lettura da un file senza bloccarlo
Ecco il codice che sto usando attualmente:
public void read(){
Scanner fp = null;
try{
fp = new Scanner(new FileReader(this.filename));
fp.useDelimiter("\n");
}catch(java.io.FileNotFoundException e){
System.out.println("java.io.FileNotFoundException e");
}
while(true){
if(fp.hasNext()){
this.parse(fp.next());
}
}
}
Se non funziona nient'altro, è possibile utilizzare jni per ottenere l'API di win32 (presumendo che tu sia su Windows, altrimenti qualsiasi API con cui stai lavorando). – Blindy
utilizzando la win32 api sarebbe la cosa più brutta;) – Bozho
Heh dato che non conosco bene Java, questo è il miglior consiglio che ho :) – Blindy