使用 FileInputStream 读取二进制文件

Read From a Binary file With FileInputStream

我开始学习了JavaI/O。我有一个包含整数数据的二进制文件,我正在尝试使用 FileInputStream 读取它并在控制台上显示文件的内容。看来我没有采取正确的方法,不断得到 -1 意味着文件结束。这是我的代码。

File f=new File("sunday.dat");
FileInputStream fis=new FileInputStream(f);

try {
    while (true) {

        number=fis.read();
        System.out.println(number);

    }
} catch (EOFException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

fis.close();

It seems I'm not making the right approach, keep getting -1 which means end of file.

确实如此。这意味着文件结束。你应该只得到一次。你不断得到,因为你没有测试它,当你得到它时就跳出了循环。

相反,您似乎依赖于捕获 EOFException,,而该方法永远不会抛出。