כיצד לפתור את ה- FileNotFoundException ב- Java.io

Kyzd Lptwr T H Filenotfoundexception B Java Io



בזמן העבודה עם הקבצים ב-Java, יכולים להיות מקרים שבהם המפתח מציין קובץ בצורה שגויה, כלומר נתיב לא מתאים או שם קובץ שגוי, או את זה שנמחק. במצבים כאלה, מתמודדת 'FileNotFoundException' שהופך לצוואר בקבוק בקוד היעיל. לכן, היפטרות מהטיפול במגבלה זו היא חיונית כדי ליישם את פונקציונליות הקוד כראוי.

בלוג זה ידגים את ' FileNotFoundException ' והגישות לפתור את זה.







כיצד לפתור את ה- FileNotFoundException ב- Java.io?

ה ' FileNotFoundException ” מתמודד כאשר קובץ שאינו קיים/מכיל במערכת מצוין להערכה. מגבלה מסוימת זו יכולה להיפתר על ידי ציון ' שם קובץ/נתיב נכונים ' או באמצעות ' נסה לתפוס 'בלוקים.



ייבא את החבילה הבאה בכל הדוגמאות של כתיבה זו כדי להפעיל את כל הפונקציונליות בתוך ' java.io חבילה:



יְבוּא java.io.* ;

דוגמה 1: נתקל ב-'FileNotFoundException' ב-Java

דוגמה זו מדגימה את תרחיש ההתרחשות של ' FileNotFoundException ”:





פּוּמְבֵּי מעמד Filenotfoundfaced {
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) זורק IOException {
FileReader filePath = חָדָשׁ FileReader ( 'file.txt' ) ;
BufferedReader לקרוא = חָדָשׁ BufferedReader ( filePath ) ;
חוּט תקליט = ריק ;
בזמן ( ( תקליט = לקרוא. קריאת שורה ( ) ) != ריק ) {
מערכת . הַחוּצָה . println ( תקליט ) ;
}
לקרוא. סגור ( ) ;
} }

לפי שורות הקוד לעיל:

  • ראשית, הכריז על ' IOException כדי להתמודד עם הבעיות שעומדות בפניו בעת קריאת קובץ.
  • לאחר מכן, צור ' FileReader ' אובייקט באמצעות ' חָדָשׁ ' מילת המפתח והקונסטרוקטור 'FileReader()' עם הקובץ שצריך לקרוא כארגומנט בנאי.
  • בשלב הבא, צור ' BufferedReader ' אובייקט כדי לקרוא את תוכן הקובץ.
  • כעת, החל את ' קריאת שורה() ' שיטה לקריאת נתוני הקובץ בהתבסס על התנאי שצוין ב' בזמן 'לולאה.

תְפוּקָה



מכיוון שהקובץ שצוין אינו קיים במערכת, החריג הנדון נמצא בנתיב הקובץ. כדי להתמודד עם זה בזמן ריצה, ציין את המדויק ' נתיב הקובץ' או 'שם הקובץ ', כדלהלן:

דוגמה 2: פתרון 'FileNotFoundException' ב-Java באמצעות בלוקים 'try-catch'

ניתן לטפל במגבלה הנדונה גם על ידי שימוש ב' נסה לתפוס 'בלוקים:

פּוּמְבֵּי מעמד הקובץ לא נמצא {
פּוּמְבֵּי סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) זורק IOException {
לְנַסוֹת {
FileReader filePath = חָדָשׁ FileReader ( 'file.txt' ) ;
BufferedReader לקרוא = חָדָשׁ BufferedReader ( filePath ) ;
חוּט תקליט = ריק ;
בזמן ( ( תקליט = לקרוא. קריאת שורה ( ) ) != ריק ) {
מערכת . הַחוּצָה . println ( תקליט ) ;
}
לקרוא. סגור ( ) ;
}
לתפוס ( FileNotFoundException זה ) {
מערכת . הַחוּצָה . println ( 'טופל חריג!' ) ;
}
} }

בגוש קוד זה, חזור על כל השלבים שנדונו אך ב' לְנַסוֹת ' לחסום במקום זאת. כמו כן, כלול את החריג הסביר הנדון, כלומר, ' FileNotFoundException ' בבלוק 'לתפוס' כדי להתמודד איתו בהתאם.

תְפוּקָה

התוצאה המבוצעת מרמזת שהחריג הנדון מטופל כראוי.

סיכום

ה ' FileNotFoundException ” מתמודד כאשר מצוין קובץ (להערכה) שאינו קיים במערכת. זה נפתר על ידי ציון ' נתיב/שם קובץ מדויקים ' או באמצעות ' נסה לתפוס 'בלוקים. מאמר זה הדגים את הגישות להתמודדות עם Java ' FileNotFoundException '.