ホームページ >Java >&#&チュートリアル >Java I/O ストリームでは例外処理はどのように実行されますか?

Java I/O ストリームでは例外処理はどのように実行されますか?

王林
王林オリジナル
2024-04-13 12:45:01547ブラウズ

Java I/O ストリームでは、IOException、FileNotFoundException、InvalidObjectException、StreamCorruptedException などの例外が発生する場合があります。これらの例外を処理するには、チェック例外 (処理する必要がある) と非チェック例外 (無視してもよい) の 2 つの方法があります。 try-catch ブロックを使用して例外を処理すると、プログラムの堅牢性とデータの整合性が保証されます。たとえば、テキスト ファイルを読み取って別のファイルに書き込むコードは、try-catch ブロックを使用して、発生する可能性のある IOException をキャッチします。

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

Java I/O ストリームでの例外処理

Java I/O ストリームは、ファイルとその内容の読み取りと書き込みに広く使用されています。これらは強力ですが、使用中にさまざまな異常が発生する可能性があります。これらの例外を処理することは、プログラムの堅牢性とデータの整合性を確保するために重要です。

例外の種類

I/O ストリームを使用すると、次の種類の例外が発生する可能性があります:

  • IOException: 一般 I/O発生する可能性のある I/O 問題を表す例外クラス。
  • FileNotFoundException: 存在しないファイルを読み書きしようとするとスローされます。
  • InvalidObjectException: シリアル化された入力ストリームからオブジェクトを読み取るときにスローされます。オブジェクトは無効です。
  • StreamCorruptedException: ストリームが破損しているか、プロトコルに準拠していない場合にスローされます。

例外処理

Java には、I/O 例外を処理するための 2 つの主なメソッドが用意されています。

  1. チェックされた例外: コードはこれらの例外を明示的に処理する必要があります。そうでない場合、コンパイラはエラーを報告します。例:

    try {
        // 读取文件
    } catch (IOException e) {
        // 处理异常
    }
  2. 未チェックの例外: コードは、コンパイラに影響を与えることなく、これらの例外を無視できます。ただし、アプリケーションの堅牢性を確保するために、それらを処理することをお勧めします。例:

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

実践的なケース

テキスト ファイルを読み取って別のファイルに書き込むプログラムを考えてみましょう。次のコードは、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 ブロックは、あらゆる IOException を処理します。 、例外が発生したときに例外メッセージを出力します。

以上がJava I/O ストリームでは例外処理はどのように実行されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。