Text File คือ ไฟล์ที่เก็บข้อมูลเป็นตัวอักษร
การประกาศตัวแปรใช้ชี้ไปยังไฟล์มีรูปแบบ ดังนี้ FILE *<ชื่อไฟล์พอยเตอร์> เช่น FILE *fpTempData; //ประกาศตัวแปรพอยเตอร์ชื่อว่า fpTempData ให้ชี้ไปยังไฟล์ การเปิดไฟล์ (สำหรับ Text File มี 3 โหมด ดังนี้) r : เปิดเพื่ออ่าน w : เปิดเพื่อเขียน ถ้ามีไฟล์เดิมอยู่แล้ว จะถูกทับด้วยไฟล์ใหม่ ถ้าไม่มีไฟล์เดิมอยู่ก็จะสร้างไฟล์ใหม่ให้ a : เปิดไฟล์ขึ้นมาเพื่อเขียนต่อ ถ้ามีไฟล์เดิมอยู่แล้ว ก็จะไปชี้ที่ท้ายไฟล์เดิมเพื่อรอให้เขียนต่อเลย ถ้าไม่มีไฟล์เดิมอยู่ก็จะสร้างไฟล์ใหม่มาให้ มีรูปแบบการเปิดไฟล์ ดังนี้ <ชื่อไฟล์พอยเตอร์> = fopen(<"[ตำแหน่งที่ตั้ง\]ชื่อไฟล์">,<"โหมดที่ต้องการเปิด">); เช่น fpTempData = fopen("c:\\test.dat","r");มีรูปแบบการปิดไฟล์ ดังนี้ fclose(<ชื่อไฟล์พอยเตอร์>) ; เช่น fclose(fpTempData) ; การอ่านข้อมูลจากไฟล์ขึ้นมาใช้งาน มีรูปแบบ ดังนี้ fscanf(<ชื่อไฟล์พอยเตอร์>,"<รูปแบบข้อความ>",&<ชื่อตัวแปรที่ใช้รับค่า>,...); เช่น fscanf(fpTempData,"%d-%d-%d",&m,&d,&y); การเขียนข้อมูล / บันทึกข้อมูลลงสู่ไฟล์ มีรูปแบบ ดังนี้ fprintf(<ชื่อไฟล์พอยเตอร์>,"<รูปแบบข้อความ>",<ชื่อตัวแปรที่จะนำค่าลงไปเก็บ>,...) เช่น fprintf(fpTempData,"%d-%d-%d",m,d,y) ฟังก์ชั่นที่ใช้ในการอ่าน หรือ เขียน ตัวอักษร getc และ fgetc จะใช้อ่านตัวอักษรตัวต่อไปจากไฟล์ขึ้นมาใช้งาน เช่น nextChar = getc(fpTempData); หรือ nextChar = fgetc(fpTempData); ....................................................................Binary File คือ ไฟล์ที่เก็บข้อมูลในรูปของเลขฐานสอง |
การประกาศตัวแปรใช้ชี้ไปยังไฟล์มีรูปแบบ ดังนี้
FILE *<ชื่อไฟล์พอยเตอร์> เช่น FILE *fpTempData; //ประกาศตัวแปรพอยเตอร์ชื่อว่า fpTempData ให้ชี้ไปยังไฟล์ การเปิดไฟล์ (สำหรับ Text File มี 3 โหมด ดังนี้) rb : เปิดเพื่ออ่าน wb : เปิดเพื่อเขียน ถ้ามีไฟล์เดิมอยู่แล้ว จะถูกทับด้วยไฟล์ใหม่ ถ้าไม่มีไฟล์เดิมอยู่ก็จะสร้างไฟล์ใหม่ให้ ab : เปิดไฟล์ขึ้นมาเพื่อเขียนต่อ ถ้ามีไฟล์เดิมอยู่แล้ว ก็จะไปชี้ที่ท้ายไฟล์เดิมเพื่อรอให้เขียนต่อเลย ถ้าไม่มีไฟล์เดิมอยู่ก็จะสร้างไฟล์ใหม่มาให้ มีรูปแบบการเปิดไฟล์ ดังนี้ <ชื่อไฟล์พอยเตอร์> = fopen(<"[ตำแหน่งที่ตั้ง\]ชื่อไฟล์">,<"โหมดที่ต้องการเปิด">); เช่น fpTempData = fopen("c:\\test.dat","rb");มีรูปแบบการปิดไฟล์ ดังนี้ fclose(<ชื่อไฟล์พอยเตอร์>) ; เช่น fclose(fpTempData) ; การอ่านข้อมูลจากไฟล์ขึ้นมาใช้งาน มีรูปแบบ ดังนี้ fread(<ชื่อตัวแปรที่ใช้รับค่า>,"<ขนาดของตัวแปร>,<จำนวน>,<ชื่อไฟล์พอยเตอร์>); เช่น fread(num,sizeof(int),1,fpTempData); การเขียนข้อมูล / บันทึกข้อมูลลงสู่ไฟล์ มีรูปแบบ ดังนี้ fwrite(<ชื่อตัวแปรที่ใช้รับค่า>,"<ขนาดของตัวแปร>,<จำนวน>,<ชื่อไฟล์พอยเตอร์>); เช่น fwrite(num,sizeof(int),1,fpTempData); ฟังก์ชั่นที่ใช้ในการจัดการไฟล์ feof(<ชื่อไฟล์พอยเตอร์>); ตรวจสอบจุดสิ้นสุดของไฟล์ เช่น feof(fpTempData); // สิ้นสุดไฟล์แล้วผลลัพธ์ที่ได้จะเป็น 0 // ถ้ายังไม่สิ้นสุดไฟล์ผลลัพธ์ที่ได้จะไม่เท่ากับ 0 ferror(<ชื่อไฟล์พอยเตอร์>); ตรวจสอบข้อผิดพลาดในขณะที่อ่านหรือเขียน เช่น ferror(fpTempData); // ไม่มีข้อผิดพลาดผลลัพธ์ที่ได้จะเป็น 0 // ถ้ามีข้อผิดพลาดผลลัพธ์ที่ได้จะไม่เท่ากับ 0 rewind(<ชื่อไฟล์พอยเตอร์>); ย้ายตำแหน่งตัวแปรพอยเตอร์ให้ไปชี้ที่ต้นไฟล์ เช่น rewind(fpTempData); ftell(<ชื่อไฟล์พอยเตอร์>); ส่งค่ากลับมาเป็นที่อยู่ของตัวแปรไฟล์พอยเตอร์ปัจจุบันมาให้ เช่น ftell(fpTempData); // จะส่งที่อยู่ของ fpTempData มาให้ remove(<ชื่อไฟล์>); ใช้สำหรับลบไฟล์ออกจากสื่อบันทึกข้อมูล เช่น remove("c:\\test.dat"); rename(<ชื่อไฟล์ต้นฉบับ>","<ชื่อไฟล์ใหม่>"); ใช้สำหรับเปลี่ยนชื่อไฟล์ เช่น rename("c:\\test.dat","c:\\abc.txt"); // ก็จะทำการเปลี่ยนชื่อไฟล์ใน Drive c:\จากชื่อ Test.dat เป็น abc.txt |