هل يمكن التقاط استثناءات متعددة في كتلة catch واحدة في Java؟
مرحبًا بالجميع! لقد بدأت مؤخرًا في تعلم Java وواجهت مشكلة عند معالجة الاستثناءات. لدي طريقة تقرأ ملفًا وتحلل الأرقام من الأسطر. أريد معالجة عدة أخطاء محتملة بشكل صحيح: إذا لم يتم العثور على الملف (FileNotFoundException)، إذا حدث خطأ في الإدخال والإخراج (IOException)، وإذا كان السطر ليس رقمًا (NumberFormatException).
حاليًا، يبدو الكود الخاص بي كالتالي:
```java
try {
BufferedReader reader = new BufferedReader(new FileReader("data.txt"));
String line = reader.readLine();
int number = Integer.parseInt(line);
System.out.println(number);
} catch (FileNotFoundException e) {
System.out.println("الملف غير موجود: " + e.getMessage());
} catch (IOException e) {
System.out.println("خطأ في الإدخال والإخراج: " + e.getMessage());
} catch (NumberFormatException e) {
System.out.println("تنسيق رقم غير صحيح: " + e.getMessage());
}
```
هذا يعمل، لكن كتل catch تتكرر والكود يصبح ضخمًا. سمعت أنه