วิธีแก้ปัญหา FileNotFoundException ใน Java.io

Withi Kae Payha Filenotfoundexception Ni Java Io



ในขณะที่ทำงานกับไฟล์ใน Java อาจมีบางกรณีที่ผู้พัฒนาระบุไฟล์ไม่ถูกต้อง เช่น พาธไม่เหมาะสมหรือชื่อไฟล์สะกดผิด หรือไฟล์นั้นถูกลบ ในสถานการณ์ดังกล่าว จะต้องเผชิญกับ “FileNotFoundException” ซึ่งกลายเป็นปัญหาคอขวดในโค้ดที่มีความคล่องตัว ดังนั้น การกำจัดข้อจำกัดนี้จึงมีความสำคัญต่อการนำฟังก์ชันการทำงานของโค้ดไปใช้อย่างเหมาะสม

บล็อกนี้จะแสดงให้เห็นถึงการพบเจอ “ FileNotFoundException ” และแนวทางการแก้ไข







วิธีแก้ไข FileNotFoundException ใน Java.io

FileNotFoundException ” จะเผชิญเมื่อมีการระบุไฟล์ที่ไม่มีอยู่/มีอยู่ในระบบสำหรับการประเมิน ข้อจำกัดเฉพาะนี้สามารถแก้ไขได้โดยระบุ “ ชื่อไฟล์/เส้นทางที่ถูกต้อง ” หรือใช้ “ ลองจับ ” บล็อก



นำเข้าแพ็คเกจต่อไปนี้ในตัวอย่างทั้งหมดของบทความนี้เพื่อเรียกใช้ฟังก์ชันทั้งหมดภายใน ' java.io ' บรรจุุภัณฑ์:



นำเข้า java.io.* ;

ตัวอย่างที่ 1: พบ “FileNotFoundException” ใน Java

ตัวอย่างนี้แสดงสถานการณ์การเกิดขึ้นของ “ FileNotFoundException ”:





สาธารณะ ระดับ ไม่พบไฟล์ {
สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง [ ] หาเรื่อง ) ขว้าง IOข้อยกเว้น {
โปรแกรมอ่านไฟล์ เส้นทางไฟล์ = ใหม่ โปรแกรมอ่านไฟล์ ( 'ไฟล์.txt' ) ;
BufferedReader อ่าน = ใหม่ BufferedReader ( เส้นทางไฟล์ ) ;
สตริง บันทึก = โมฆะ ;
ในขณะที่ ( ( บันทึก = อ่าน. อ่านไลน์ ( ) ) != โมฆะ ) {
ระบบ . ออก . พิมพ์ ( บันทึก ) ;
}
อ่าน. ปิด ( ) ;
} }

ตามบรรทัดรหัสด้านบน:

  • ประการแรก ประกาศเป็น “ IOข้อยกเว้น ” เพื่อรับมือกับปัญหาที่ต้องเผชิญขณะอ่านไฟล์
  • หลังจากนั้นให้สร้าง “ โปรแกรมอ่านไฟล์ ” วัตถุโดยใช้ “ ใหม่ ” คำหลักและตัวสร้าง “FileReader()” ที่มีไฟล์ที่ต้องอ่านเป็นอาร์กิวเมนต์ตัวสร้าง
  • ในขั้นตอนถัดไป สร้าง “ BufferedReader ” วัตถุเพื่ออ่านเนื้อหาของไฟล์
  • ตอนนี้ ใช้ “ อ่านบรรทัด () ” วิธีการอ่านข้อมูลไฟล์ตามเงื่อนไขที่กำหนดใน “ ในขณะที่ ” วนซ้ำ

เอาต์พุต



เนื่องจากไฟล์ที่ระบุไม่มีอยู่ในระบบ ข้อยกเว้นที่กล่าวถึงจึงต้องเผชิญกับเส้นทางของไฟล์ เพื่อรับมือกับมันในขณะรันไทม์ ให้ระบุ “ เส้นทางไฟล์” หรือ “ชื่อไฟล์ ” ดังนี้

ตัวอย่างที่ 2: การแก้ไข “FileNotFoundException” ใน Java โดยใช้บล็อก “try-catch”

ข้อจำกัดที่กล่าวถึงยังสามารถดูแลได้โดยใช้ “ ลองจับ ” บล็อก:

สาธารณะ ระดับ ไม่พบไฟล์ {
สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง [ ] หาเรื่อง ) ขว้าง IOข้อยกเว้น {
พยายาม {
โปรแกรมอ่านไฟล์ เส้นทางไฟล์ = ใหม่ โปรแกรมอ่านไฟล์ ( 'ไฟล์.txt' ) ;
BufferedReader อ่าน = ใหม่ BufferedReader ( เส้นทางไฟล์ ) ;
สตริง บันทึก = โมฆะ ;
ในขณะที่ ( ( บันทึก = อ่าน. อ่านไลน์ ( ) ) != โมฆะ ) {
ระบบ . ออก . พิมพ์ ( บันทึก ) ;
}
อ่าน. ปิด ( ) ;
}
จับ ( FileNotFoundException มันคือ ) {
ระบบ . ออก . พิมพ์ ( “จัดการข้อยกเว้น!” ) ;
}
} }

ในบล็อกโค้ดนี้ ให้ทำซ้ำขั้นตอนที่กล่าวถึงทั้งหมด แต่ในส่วน “ พยายาม ” บล็อกแทน รวมถึงข้อยกเว้นที่เป็นไปได้ที่กล่าวถึง เช่น “ FileNotFoundException ” ในการ “รับมือ” บล็อกนี้ให้รับมือตามนั้น

เอาต์พุต

ผลลัพธ์ที่ดำเนินการหมายความว่าข้อยกเว้นที่กล่าวถึงได้รับการจัดการอย่างเหมาะสม

บทสรุป

FileNotFoundException ” จะเผชิญเมื่อมีการระบุไฟล์ (ที่จะประเมิน) ที่ไม่มีอยู่ในระบบ แก้ไขได้โดยระบุ “ เส้นทางไฟล์/ชื่อไฟล์ที่ถูกต้อง ” หรือใช้ “ ลองจับ ” บล็อก บทความนี้แสดงแนวทางรับมือกับ Java “ FileNotFoundException '.