ประเภทไฟล์จะบอกคุณว่าไฟล์นั้นเป็นไฟล์แบบใด เช่น รูปภาพ JPEG หรือเอกสาร PDF โดยจะเป็นชื่อของรูปแบบไฟล์ ซึ่งกำหนดการจัดเรียงข้อมูลภายในไฟล์
ในรายงานเมทาดาทา ช่อง File Type จะแสดงรูปแบบนี้เป็นชื่อย่อ เช่น JPEG หรือ PDF ค่านี้มาจากเนื้อหาในไฟล์เป็นหลัก จึงอาจแตกต่างจากนามสกุลไฟล์
ลักษณะของค่านั้นเป็นอย่างไร
File Type เป็นชื่อแบบสั้น สำหรับหลายรูปแบบไฟล์ ชื่อนี้จะตรงกับนามสกุลไฟล์ที่เขียนด้วยตัวพิมพ์ใหญ่
PNGสำหรับภาพ PNGMP4สำหรับวิดีโอ MP4PDFสำหรับเอกสาร PDFJPEGสำหรับรูปถ่าย JPG ไม่ว่านามสกุลไฟล์จะลงท้ายด้วย .jpg, .jpeg หรือ .jpeTIFFสำหรับรูปภาพที่ชื่อลงท้ายด้วย .tif หรือ .tiff
บางประเภทไฟล์ใช้โครงสร้างพื้นฐานร่วมกัน วิดีโอ MP4 ไฟล์เสียง M4A และรูปภาพ HEIC ใช้พื้นฐานมาจากรูปแบบ QuickTime
ไฟล์เสียง WAV และรูปภาพ WebP ใช้โครงสร้างที่เรียกว่า RIFF แต่ File Type ยังระบุชนิดเฉพาะ เช่น MP4 หรือ WAV
File Type เป็นพื้นฐานของช่องที่เกี่ยวข้องอีก 2 ช่อง คือ File Type Extension และ MIME Type สำหรับไฟล์ JPEG ช่องเหล่านี้จะแสดง jpg และ image/jpeg สำหรับไฟล์เสียงและวิดีโอ โปรแกรม ffprobe จะรายงานรูปแบบของ container เพิ่มเติมเป็น Format Name
แหล่งที่มาของค่า
ไม่มีทั้งกล้องหรือโปรแกรมใดที่เขียนค่า File Type ลงในไฟล์ และคุณก็ไม่สามารถแก้ไขค่านี้ได้ โปรแกรมอ่านเมทาดาทา ExifTool จะสร้างค่า File Type เมื่ออ่านไฟล์
ExifTool จะลองตรวจสอบรูปแบบที่นามสกุลไฟล์บอกเป็นอันดับแรก โดยจะเช็กว่าไฟล์เริ่มต้นด้วยลำดับไบต์คงที่ที่รูปแบบนั้นใช้หรือไม่ ถ้าไบต์ไม่ตรง ExifTool จะลองตรวจสอบกับรูปแบบอื่นที่รู้จัก
ลำดับไบต์นี้มักเรียกว่า magic number หรือ signature ไฟล์ JPEG จะเริ่มต้นด้วยไบต์ FF D8 FF และไฟล์ PNG จะเริ่มต้นด้วย 89 50 4E 47 ช่อง raw header จะแสดงไบต์แรกๆ เหล่านี้
เมื่อไม่มีรูปแบบใดตรงกัน ExifTool จะแสดงข้อผิดพลาดแทนค่า File Type เช่น
File format errorถ้า ExifTool รู้จักนามสกุลไฟล์ เช่น .jpgUnknown file typeถ้านามสกุลไฟล์ไม่รู้จักหรือไม่มีFile is emptyถ้าไฟล์ไม่มีข้อมูล
ประเภทไฟล์และนามสกุลไฟล์ไม่เหมือนกัน
นามสกุลไฟล์คือตอนท้ายของชื่อไฟล์ เช่น .jpg ใน photo.jpg บน Windows นามสกุลไฟล์จะบอกคอมพิวเตอร์ว่าควรใช้โปรแกรมใดเปิดไฟล์ และควรแสดงไอคอนแบบใด
ใครก็เปลี่ยนนามสกุลไฟล์ได้ แต่การเปลี่ยนนี้จะไม่ทำให้ข้อมูลภายในไฟล์เปลี่ยนไป การเปลี่ยนชื่อจาก photo.jpg เป็น photo.png จะไม่ทำให้รูปนั้นกลายเป็นรูป PNG
เนื่องจาก ExifTool อ่านไบต์แรกของไฟล์ ค่า File Type จึงแสดงรูปแบบจริงของไฟล์ได้ หากไฟล์ชื่อ photo.png แสดงค่า JPEG แสดงว่าไฟล์นั้นคือรูป JPEG ที่ใช้นามสกุลผิด
บางรูปแบบไฟล์ไม่มี magic number การตรวจสอบแบบนี้จึงใช้ไม่ได้กับทุกไฟล์ ภายในกลุ่มเดียวกัน เช่น รูปแบบ raw ที่อิงกับ TIFF นามสกุลไฟล์ยังคงใช้บอกชนิดย่อยที่เฉพาะเจาะจงได้
วิธีดูว่าไฟล์ของคุณเป็นชนิดใด
- ตรวจดูนามสกุลไฟล์ ใน Windows 11 ที่ File Explorer ให้เลือกเมนู View จากนั้นเลือก Show แล้วเลือก File name extensions ใน Windows 10 ให้เลือกช่อง File name extensions ที่แท็บ View
- อ่านช่อง File Type ในเมทาดาทาของไฟล์
- บน Linux ให้รันคำสั่ง
fileคำสั่งนี้จะรันการทดสอบ 3 ชุด และแสดงประเภทไฟล์จากชุดการทดสอบแรกที่สำเร็จ
ทำไมมันจึงสำคัญ
เมื่อส่วนขยายนามสกุลไม่ตรงกับประเภทไฟล์ คอมพิวเตอร์ของคุณอาจเลือกใช้โปรแกรมไม่ถูกต้อง เบราว์เซอร์จะใช้ค่า MIME type จากเว็บเซิร์ฟเวอร์ ไม่ใช่นามสกุลไฟล์ เพื่อใช้ตัดสินใจว่าควรจัดการไฟล์อย่างไร