Page 42 - การโปรแกรมคอมพิวเตอร์ขั้นสูง
P. 42

2-32 การโปรแกรมคอมพิวเตอร์ขั้นสูง

เรอื่ ง​ท่ี 2.2.1
การ​สร้างแ​ ละเ​ขยี น​ไฟล์

       หากศ​ ึกษาใ​นต​ อนท​ ี่ 2.1 แล้ว จะเ​ห็นว​ ่า คลาสไ​ฟล์ไ​ม่มีเ​มธอด​สำ�หรับส​ ร้างห​ รือ​อ่านเ​ขียน​ไฟล์ มีเ​ฉพาะเ​มธอด​
ที่ท​ ำ�งานเ​กี่ยวก​ ับก​ ารต​ รวจส​ อบค​ ุณสมบัติข​ องไ​ฟล์ การเ​ปลี่ยนช​ ื่อไ​ฟล์ห​ รือไ​ดเรกท​ อ​ รี และก​ ารล​ บไ​ฟล์ ซึ่งใ​นก​ ารท​ ำ�งาน​
เกี่ยว​กับ​ไฟล์​นั้น ใน​บาง​ครั้ง​มี​ความ​จำ�เป็น​ที่จ​ ะต​ ้อง​สร้าง​ไฟล์ใ​หม่​ขึ้นม​ า หรือ​อ่าน​เขียน​เนื้อหา​ของ​ไฟล์​ที่​ต้องการ โดย​
ภาษา​จาวาไ​ด้จ​ ัดเ​ตรียมค​ ลาส​เอา​ไว้ส​ ำ�หรับส​ ร้างแ​ ละอ​ ่านเ​ขียน​ไฟล์ ซึ่งม​ ี​รายล​ ะเอียดด​ ังนี้

1. 	การ​สรา้ งไ​ ฟล์

       ภาษาจ​ าวาไ​ด้จ​ ัด​เตรียม​คลาส​พรินต์​ไรต์เ​ทอร์ (PrintWriter class) เอาไ​ว้ส​ ำ�หรับ​การ​สร้างแ​ ละ​เขียน​ไฟล์ ซึ่ง​
ถูกบ​ รรจุ​อยู่ใ​น​แพ็กเ​กจช​ ื่อ java.io.PrintWriter โดยเ​ป็นการ​กระทำ�​กับ​เท็กซ์​ไฟล์ (text file) มี​คอนส​ ตรัคเ​ทอร์แ​ ละ​
เมธอดข​ องค​ ลาส​พรินต์​ไรต์​เทอร์​ที่​น่าส​ นใจ​ดังนี้

       1.1 	การส​ ร้างไ​ ฟล์ด​ ้วยค​ ลาสพ​ รินต์ไ​ รต์เ​ทอร์  ซึ่งผ​ ลลัพธ์จ​ ะไ​ด้ไ​ฟล์ข​ ้อมูลใ​หม่เ​พิ่มข​ ึ้นม​ า โดยส​ ามารถส​ ร้างไ​ด​้
จาก​คอน​สตรัคเ​ทอร์ข​ องค​ ลาส ซึ่ง​มีรายล​ ะเอียด​ดังนี้

รปู แ​ บบท​ ่ี 1 	  PrintWriter(String fileName) 	 					

       โดย
            filename คือ ตำ�แหน่งท​ ี่เ​ก็บ​ไฟล์​และ​ชื่อไ​ฟล์​ที่​ต้องการส​ ร้าง ซึ่งค​ ่าที่​ระบุต​ ้องเ​ป็น String

       คอนส​ ตรัคเ​ทอร์​นี้จ​ ะท​ ำ�การ​สร้าง​ออบเ​จ็กต์ข​ อง​พรินต์ไ​รต์​เทอร์ ซึ่ง​ทำ�ให้​เกิดเ​ป็นไ​ฟล์ใ​หม่​ขึ้น​มา โดยส​ ามารถ​
ระบุต​ ำ�แหน่งท​ ี่​เก็บไ​ฟล์แ​ ละ​ชื่อ​ไฟล์ได้ ดังน​ ั้น filename จึงใ​ช้​แทนต​ ำ�แหน่งท​ ี่​เก็บไ​ฟล์แ​ ละ​ชื่อไ​ฟล์​ที่​ต้องการส​ ร้าง

รปู แ​ บบท​ ่ี 2	   PrintWriter(File file)  		 			

       โดย
            file คือ ออบ​เจ็กต์ท​ ี่​เกิด​มา​จากค​ ลาสไ​ฟล์ ซึ่งค​ ่าที่​ระบุ​ต้อง​เป็น​ออบเ​จ็กต์

       คอนส​ ตรัคเ​ทอรน์​ จี​้ ะท​ �ำ การส​ ร้างอ​ อบเ​จก็ ตข์​ องพ​ รนิ ตไ​์ รตเ์​ทอรเ์​ชน่ ก​ ัน แตส่​ รา้ งม​ าจ​ าก​ ออ​ บเ​จ็กตข​์ องไ​ฟลท​์ เี​่ กิด​
จาก​คลาสไ​ฟล์ ตามอ​ าร์กิวเมนต์ (argument) file ที่​ส่งเ​ข้าม​ า ซึ่ง​ผลลัพธ์​จะ​ทำ�ให้เ​กิด​เป็นไ​ฟล์ใ​หม่​ขึ้นม​ า​ได้เ​ช่น​กัน
   37   38   39   40   41   42   43   44   45   46   47