Detect the file type of a Buffer/Uint8Array/ArrayBuffer
The file type is detected by checking the magic number of the buffer.
This package is for detecting binary-based file formats, not text-based formats like .txt
, .csv
, .svg
, etc.
npm i get-typeandmime
This package is a ES5 module package.But can be used with both ES5 and ES6 as well
Determine file type from a file:
const {getFileType} = require(get-typeandmime)
const file = "../.path/file.extension"
console.log(getFileType(file));
Determine file type from a Buffer, which may be a portion of the beginning of a file:
This can also be used to read from a remote location:
const {getStreamFileType} = require(get-typeandmime)
const remoteFile = "https://static.remove.bg/sample-gallery/graphics/bird-thumbnail.jpg";
(async()=>{
console.log("Remote File Type:",await getStreamFileType(remoteFile));
})()
-
signs
- Buffer code of supported file types -
mime
- The MIME type
Or Unsupported file type
when there is no match.
Type: Buffer | Uint8Array | ArrayBuffer
A buffer representing file data. It works best if the buffer contains the entire file. It may work with a smaller portion as well.
file: string
The file path to parse.
Pull requests are welcome for additional commonly used file types.