>  기사  >  Java  >  Java I/O 스트림에서 예외 처리는 어떻게 수행됩니까?

Java I/O 스트림에서 예외 처리는 어떻게 수행됩니까?

王林
王林원래의
2024-04-13 12:45:01489검색

Java I/O 스트림에는 IOException, FileNotFoundException, InvalidObjectException 및 StreamCorruptedException을 포함한 예외가 발생할 수 있습니다. 이러한 예외를 처리하는 방법에는 확인된 예외(처리해야 함)와 확인되지 않은 예외(무시할 수 있음)의 두 가지 방법이 있습니다. try-catch 블록을 사용하여 예외를 처리하면 프로그램 견고성과 데이터 무결성이 보장됩니다. 예를 들어 텍스트 파일을 읽고 이를 다른 파일에 쓰는 코드는 발생할 수 있는 IOException을 포착하기 위해 try-catch 블록을 사용합니다.

Java I/O流中的异常处理是如何进行的?

Java I/O 스트림의 예외 처리

Java I/O 스트림은 파일과 해당 내용을 읽고 쓰는 데 널리 사용됩니다. 강력하기는 하지만 사용할 때 다양한 이상 현상이 발생할 수 있습니다. 이러한 예외를 처리하는 것은 프로그램 견고성과 데이터 무결성을 보장하는 데 중요합니다.

예외 유형

I/O 스트림을 사용할 때 다음 유형의 예외가 발생할 수 있습니다.

  • IOException: 발생할 수 있는 모든 I/O 문제를 나타내는 일반 I/O 예외 클래스입니다.
  • FileNotFoundException: 존재하지 않는 파일을 읽거나 쓰려고 할 때 발생합니다.
  • InvalidObjectException: 직렬화된 입력 스트림에서 객체를 읽을 때 발생합니다. 객체가 유효하지 않습니다.
  • StreamCorruptedException: 스트림이 손상되었거나 프로토콜을 준수하지 않을 때 발생합니다.

예외 처리

Java는 I/O 예외 처리를 위한 두 가지 주요 방법을 제공합니다.

  1. Checked 예외: 코드는 이러한 예외를 명시적으로 처리해야 합니다. 그렇지 않으면 컴파일러가 오류를 보고합니다. 예:

    try {
        // 读取文件
    } catch (IOException e) {
        // 处理异常
    }
  2. 확인되지 않은 예외: 코드는 컴파일러에 영향을 주지 않고 이러한 예외를 무시할 수 있습니다. 그러나 애플리케이션 견고성을 보장하려면 이를 처리하는 것이 좋습니다. 예:

    try {
        // 读取文件
    } catch (RuntimeException e) {
        // 处理异常
    }

실용적 예

텍스트 파일을 읽고 이를 다른 파일에 쓰는 프로그램을 생각해 보세요. 다음 코드는 try-catch 블록을 사용하여 발생할 수 있는 예외를 처리합니다. try-catch 块来处理可能发生的异常:

import java.io.*;

public class FileIO {

    public static void main(String[] args) {
        try {
            // 创建输入流读取文件
            FileInputStream fis = new FileInputStream("input.txt");
            // 创建输出流写入文件
            FileOutputStream fos = new FileOutputStream("output.txt");

            // 读写文件内容
            int c;
            while ((c = fis.read()) != -1) {
                fos.write(c);
            }

            // 关闭流
            fis.close();
            fos.close();
        } catch (IOException e) {
            // 打印异常信息
            System.out.println("Error occurred: " + e.getMessage());
        }
    }
}

在该示例中,try-catch 块处理任何 IOExceptionrrreee

이 예에서 try-catch 블록은 모든 IOException을 처리합니다. code> , 예외가 발생하면 예외 메시지를 인쇄합니다. 🎜

위 내용은 Java I/O 스트림에서 예외 처리는 어떻게 수행됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.