Strim I/O Java mungkin menghadapi pengecualian, termasuk IOException, FileNotFoundException, InvalidObjectException dan StreamCorruptedException. Terdapat dua cara untuk mengendalikan pengecualian ini: pengecualian yang ditandai (yang mesti dikendalikan) dan pengecualian yang tidak ditandai (yang boleh diabaikan). Mengendalikan pengecualian menggunakan blok try-catch memastikan keteguhan program dan integriti data. Sebagai contoh, kod yang membaca fail teks dan menulisnya ke fail lain menggunakan blok cuba-tangkap untuk menangkap IOExceptions yang mungkin berlaku.
Strim I/O Java digunakan secara meluas untuk membaca dan menulis fail serta kandungannya. Walaupun ia berkuasa, anda mungkin menghadapi pelbagai anomali semasa menggunakannya. Mengendalikan pengecualian ini adalah penting untuk memastikan keteguhan program dan integriti data.
Anda mungkin menghadapi jenis pengecualian berikut apabila menggunakan strim I/O:
Java menyediakan dua kaedah utama untuk mengendalikan pengecualian I/O:
Pengecualian yang Disemak: Kod mesti mengendalikan pengecualian ini secara eksplisit, jika tidak, pengkompil akan melaporkan ralat. Contohnya:
try { // 读取文件 } catch (IOException e) { // 处理异常 }
Pengecualian tidak ditandai: Kod boleh mengabaikan pengecualian ini tanpa menjejaskan pengkompil. Walau bagaimanapun, adalah disyorkan untuk mengendalikannya untuk memastikan keteguhan aplikasi. Contohnya:
try { // 读取文件 } catch (RuntimeException e) { // 处理异常 }
Pertimbangkan program yang membaca fail teks dan menulisnya ke fail lain. Kod berikut menggunakan blok try-catch
untuk mengendalikan pengecualian yang mungkin berlaku: 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
rrreee
try-catch
mengendalikan sebarang IOException code> , cetak mesej pengecualian apabila pengecualian berlaku. 🎜
Atas ialah kandungan terperinci Bagaimanakah pengendalian pengecualian dilakukan dalam aliran Java I/O?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!