Есть ли способ обнаружить конец двоичного файла с помощью readUTF () в Java? - PullRequest
0 голосов
/ 05 мая 2019

Я хотел бы знать, возможно ли определить конец двоичного файла при использовании readUTF () / readInt () / etc. функции (методы DataInputStream). Вот код

    try(DataInputStream reader = new DataInputStream(new BufferedInputStream(new FileInputStream("file.dat")))){
        String input;
        while((input = br.readUTF()) != null){ //something like that
            //some code
        }
    }catch(IOException error){
        //handling exception
    }

Если нет, какое рекомендуемое решение для таких случаев? Спасибо за любую помощь!

1 Ответ

0 голосов
/ 05 мая 2019

Исходя из readUTF из документов, я не вижу элегантного способа сделать это, возможно, вы могли бы читать, пока он не достигнет EOFExceptionкак это:

    while(true){
        try{
            input = reader.readUTF();
        }
        catch(EOFException e) {
            //....
        }
    }
...