Мне нужно уметь имитировать 'tail -f' с Java. Я пытаюсь прочитать файл журнала, поскольку он написан другим процессом, но когда я открываю файл для его чтения, он блокирует файл, а другой процесс больше не может писать. Любая помощь будет принята с благодарностью!Java: открытие и чтение из файла без его блокировки
Вот код, который я использую в настоящее время:
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());
}
}
}
Если ничего не работает, вы можете использовать jni, чтобы перейти к win32 api (при условии, что вы находитесь на окнах, иначе все, с чем вы работаете). – Blindy
с помощью win32 api было бы самым уродливым;) – Bozho
Хех, так как я не знаю Java, это хорошо, это лучший совет, который у меня есть :) – Blindy