要捕获在IO流读取结束时离开主循环的异常,可以使用try-catch语句块来处理异常。以下是一个示例代码:
try {
    // 创建文件输入流
    FileInputStream fis = new FileInputStream("file.txt");
    // 创建缓冲输入流
    BufferedReader br = new BufferedReader(new InputStreamReader(fis));
    String line;
    // 主循环读取文件内容
    while ((line = br.readLine()) != null) {
        // 处理每一行数据
        System.out.println(line);
    }
    // 关闭输入流
    br.close();
    fis.close();
} catch (IOException e) {
    // 捕获异常并输出异常信息
    e.printStackTrace();
}
在这个示例中,我们使用了FileInputStream和BufferedReader来读取文件内容。在主循环中,我们使用readLine()方法读取每一行数据,直到遇到文件末尾。
在try块中,如果发生了IOException异常,即IO流读取结束,程序会自动跳转到catch块中处理异常。在这里,我们简单地使用了printStackTrace()方法来输出异常信息,您可以根据实际需求来处理异常。