nodejs判断文件类型
时间: 2023-11-28 21:45:00 浏览: 108
Node.js 中判断一个文件是否存在
以下是在Node.js中判断文件类型的方法:
1.使用file-type模块,该模块可以通过读取文件的内容来判断文件类型。示例代码如下:
```javascript
const FileType = require('file-type');
(async () => {
console.log(await FileType.fromFile('example.png')); // => {ext: 'png', mime: 'image/png'}
})();
```
2.通过文件头标识判断文件类型。每个文件都有文件头标识,不同类型的文件的文件头标识是不同的,因此可以通过判断文件头标识来识别文件类型。示例代码如下:
```javascript
const fs = require('fs');
function getFileType(filePath) {
const buffer = Buffer.alloc(8);
const fd = fs.openSync(filePath, 'r');
fs.readSync(fd, buffer, 0, 8, 0);
fs.closeSync(fd);
if (buffer.slice(0, 4).toString('hex') === '89504e47') {
return 'image/png';
} else if (buffer.slice(0, 4).toString('hex') === '47494638') {
return 'image/gif';
} else if (buffer.slice(0, 2).toString('hex') === 'ffd8') {
return 'image/jpeg';
} else if (buffer.slice(0, 2).toString('hex') === '424d') {
return 'image/bmp';
} else {
return null;
}
}
console.log(getFileType('example.png')); // 输出:image/png
```
阅读全文