Skip to content

FileType (identify MIME-type)

ts
function FileType(filename: string): string;

Most file types can be identified regardless of the file name or extension, by simply reading the first 261 bytes (at most) of the file itself. Since there is no need to read the whole file, this process is extremely quick even for very large files, and doesn’t waste any RAM.

This function accepts the following parameters:

ParameterTypeRequirementExplanation
filenamestringrequiredmust be a valid and fully qualified path to an existing file

This function returns a string containing the MIME-Type of the file, if it is identified. Here’s a list of file types that this function can identify:

CategoryTypical extension(s)Returned MIME-Type
Imagejpg, jpegimage/jpeg
Imagepngimage/png
Imagegifimage/gif
Imagewebpimage/webp
Imagecr2image/x-canon-cr2
Imagetif, tiffimage/tiff
Imagebmp, bmp2image/bmp
Imageheifimage/heif
Imagejxrimage/vnd.ms-photo
Imagepsdimage/vnd.adobe.photoshop
Imageicoimage/x-icon
Imagedwgimage/vnd.dwg
Videomp4video/mp4
Videom4vvideo/x-m4v
Videomkvvideo/x-matroska
Videowebmvideo/webm
Videomov, qtvideo/quicktime
Videoavivideo/x-msvideo
Videowmvvideo/x-ms-wmv
Videompgvideo/mpeg
Videoflvvideo/x-flv
Video3gpvideo/3gpp
Audiomidaudio/midi
Audiomp3audio/mpeg
Audiom4aaudio/m4a
Audiooggaudio/ogg
Audioflacaudio/x-flac
Audiowavaudio/x-wav
Audioamraudio/amr
Audioaacaudio/aac
Archiveepubapplication/epub+zip
Archivezipapplication/zip
Archivetarapplication/x-tar
Archiverarapplication/x-rar-compressed
Archivegzapplication/gzip
Archivebz2application/x-bzip2
Archive7zapplication/x-7z-compressed
Archivexzapplication/x-xz
Archivepdfapplication/pdf
Archiveexeapplication/x-msdownload
Archiveswfapplication/x-shockwave-flash
Archivertfapplication/rtf
Archiveisoapplication/x-iso9660-image
Archiveeotapplication/octet-stream
Archivepsapplication/postscript
Archivesqliteapplication/x-sqlite3
Archivenesapplication/x-nintendo-nes-rom
Archivecrxapplication/x-google-chrome-extension
Archivecabapplication/vnd.ms-cab-compressed
Archivedebapplication/x-deb
Archivearapplication/x-unix-archive
ArchiveZapplication/x-compress
Archivelzapplication/x-lzip
Archiverpmapplication/x-rpm
Archiveelfapplication/x-executable
Archivedcmapplication/dicom
Documentdocapplication/msword
Documentdocxapplication/vnd.openxmlformats-officedocument.wordprocessingml.document
Documentxlsapplication/vnd.ms-excel
Documentxlsxapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet
Documentpptapplication/vnd.ms-powerpoint
Documentpptxapplication/vnd.openxmlformats-officedocument.presentationml.presentation
Fontwoffapplication/font-woff
Fontwoff2application/font-woff
Fontttfapplication/font-sfnt
Fontotfapplication/font-sfnt
Applicationwasmapplication/wasm