file-type - Xác định loại tệp trong Buffer
(github.com)- Thư viện JS phát hiện loại tệp bằng magic number*, trả về Promise
→ .fromBuffer : Buffer/Uint8Array/ArrayBuffer
→ .fromFile : tên đường dẫn
→ .fromStream : stream Node.js
→ .fromTokenizer : ITokenizer - kiểm tra tệp từ xa bằng @tokenizer/http, @tokenizer/s3, v.v.
- Hỗ trợ khoảng hơn 120 loại tệp
→ jpg/png/gif/webp/tif/bmp/ico/psd/ai/skp/avif
→ zip/tar/rar/gz/7z/dmg/lzh
→ mp4/mkv/webm/mov/avi/wmv
→ mp3/ogg/flac/wav/wma/ac3
→ pdf/epub/mobi/ps/eps
→ exe/swf/flv
→ rtf/docx/pptx/xlsx/odt/ods/odp
→ ttf/otf/woff/woff2
→ ics
→ pcap
- Magic number: các giá trị đặc biệt được đặt ở phần đầu tệp để phân biệt loại tệp. Unix thời kỳ đầu chỉ dùng khoảng 2 byte, nhưng ngày nay có thể dùng nhiều byte ở phần đầu hơn
→ Tệp .class của Java bắt đầu bằng "CAFEBABE"
→ GIF89a bắt đầu bằng mã ASCII "GIF89a": 47 49 46 38 39 61
→ JPEG bắt đầu bằng "FF D8" và kết thúc bằng "FF D9"
→ Tệp script Unix/Linux là "#!"
→ Tệp PDF là "%PDF"
→ Tệp ZIP bắt đầu bằng "PK" - đặt theo tên Phil Katz, nhà phát triển PKZIP cho DOS
Chưa có bình luận nào.