powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Как открыть файл на чтение, в который другой процесс сейчас пишет
2 сообщений из 2, страница 1 из 1
Как открыть файл на чтение, в который другой процесс сейчас пишет
    #33845372
ежемуха
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне нужно продолжать читать файл, пока пишуший процесс его не закроет, без переоткрытия файла.
Ну как tail -f в юниксе или как вьювер в фаре, когда End нажимаешь (он показывает как файл растет).

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
            File f =  new  File(args[ 0 ]);
            FileReader fis =  null ;
             try  {
                fis =  new  FileReader(f);
            }  catch  (FileNotFoundException ex) {
                System.err.println("File not found - " + args[ 0 ]);
                System.exit( - 1 );
            }
            BufferedReader br =  new  BufferedReader(fis);

            // find out the title - first line of file
            String title =  null ;
             try  {
                title = br.readLine();
...
Рейтинг: 0 / 0
Как открыть файл на чтение, в который другой процесс сейчас пишет
    #33846142
ежемуха
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот, самому пришлось изобретать

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
BufferedReader br =  new  BufferedReader(fis){
     private   long  breakWhenIdleMillis =  10 * 1000 ; // break if 10 seconds idle
     public  String readLine()  throws  IOException {
        String s;
         long  lastNullMillis = System.currentTimeMillis();
         while  ((s= super .readLine())== null ){
             if ((lastNullMillis + breakWhenIdleMillis) < System.currentTimeMillis()){
                 break ;
            }
        }                    
         return  s;
    }
};

Только, к сожалению, мой readLine может возвращать разорванные строки. Никак не отличить конец стрима от конца строки, если не лезть в метод read, а там их несколько :(
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Как открыть файл на чтение, в который другой процесс сейчас пишет
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]