ফাইল স্নিফার


গল্প

এই অনুশীলনীর গল্পে ফাইলের এক্সটেনশনের সাথে বাইনারি ফাইল ফরম্যাট তুলনা করার প্রেক্ষাপট ব্যবহার করে বাইনারি ডেটা, প্যাটার্ন ম্যাচিং ও স্ট্রিং এনকোডিংয়ের ধারণাগুলো খতিয়ে দেখা হয়েছে। শিক্ষার্থীর কাজ হলো প্রত্যাশিত মিডিয়া টাইপের সাথে ফাইলের এনকোড করা মিডিয়া টাইপ তুলনা করার জন্য কয়েকটি ফাংশন লেখা।

কাজ

গল্পটি নিচের ফাংশনগুলো ডিফাইন করার সুযোগ করে দেয়:

  • একটি স্ট্রিং এক্সটেনশন থেকে মিডিয়া টাইপ রিটার্ন করা।
  • একটি বাইনারি ফাইল ফরম্যাট থেকে মিডিয়া টাইপ রিটার্ন করা।
  • স্ট্রিং এক্সটেনশন থেকে প্রত্যাশিত মিডিয়া টাইপের সাথে বাইনারি ফাইল থেকে প্রকৃত টাইপের তুলনা করা।

অনুশীলনীর রেফারেন্স

ফাইলের ধরন কমন এক্সটেনশন মিডিয়া টাইপ প্রথম বাইটগুলো থেকে বাইনারি 'সিগনেচার'
ELF none or "exe" "application/octet-stream" 0x7F, 0x45, 0x4C, 0x46
BMP "bmp" "image/bmp" 0x42, 0x4D
PNG "png" "image/png" 0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A
JPG "jpg" "image/jpg" 0xFF, 0xD8, 0xFF
GIF "gif" "image/gif" 0x47, 0x49, 0x46

ইমপ্লিমেন্টেশন