@yiiran/get-file-type
Advanced tools
Comparing version 1.0.2 to 1.0.3
'use strict'; | ||
var formatMap = { | ||
'pdf': ['25', '50', '44', '46'], | ||
'file2003': ['d0', 'cf', '11', 'e0'], | ||
'file2007': ['50', '4b', '03', '04', '14', '00', '06', '00'] | ||
}; | ||
//区分xlsx,pptx,docx三种格式的buffer码。通过每个文件末尾的关键词检索判断 | ||
var format2007Map = { | ||
xlsx: ['77', '6f', '72', '6b', '73', '68', '65', '65', '74', '73', '2f'], | ||
// 转换成ascii码的含义是 worksheets/ | ||
docx: ['77', '6f', '72', '64', '2f'], | ||
// 转换成ascii码的含义是 word/ | ||
pptx: ['70', '70', '74', '2f'] // 转换成ascii码的含义是 ppt/ | ||
}; | ||
//区分xls,ppt,doc三种格式的buffer码,xls从文件开头判断,其他两种从文件末尾判断 | ||
var pptFormatList = ['50', '6f', '77', '65', '72', '50', '6f', '69', '6e', '74', '20', '44', '6f', '63', '75', '6d', '65', '6e', '74']; // 转换成ascii码的含义是 PowerPoint Document | ||
var format2003Map = { | ||
xls: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '45', '78', '63', '65', '6c'], | ||
// 转换成ascii码的含义是 Microsoft Excel | ||
doc: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '57', '6f', '72', '64'], | ||
// 转换成ascii码的含义是 Microsoft Word | ||
ppt: pptFormatList.join(',00,').split(',') | ||
}; | ||
//判断文件类型 | ||
@@ -13,24 +35,2 @@ /** | ||
} | ||
var formatMap = { | ||
'pdf': ['25', '50', '44', '46'], | ||
'file2003': ['d0', 'cf', '11', 'e0'], | ||
'file2007': ['50', '4b', '03', '04', '14', '00', '06', '00'] | ||
}; | ||
//区分xlsx,pptx,docx三种格式的buffer码。通过每个文件末尾的关键词检索判断 | ||
var format2007Map = { | ||
xlsx: ['77', '6f', '72', '6b', '73', '68', '65', '65', '74', '73', '2f'], | ||
// 转换成ascii码的含义是 worksheets/ | ||
docx: ['77', '6f', '72', '64', '2f'], | ||
// 转换成ascii码的含义是 word/ | ||
pptx: ['70', '70', '74', '2f'] // 转换成ascii码的含义是 ppt/ | ||
}; | ||
//区分xls,ppt,doc三种格式的buffer码,xls从文件开头判断,其他两种从文件末尾判断 | ||
var pptFormatList = ['50', '6f', '77', '65', '72', '50', '6f', '69', '6e', '74', '20', '44', '6f', '63', '75', '6d', '65', '6e', '74']; // 转换成ascii码的含义是 PowerPoint Document | ||
var format2003Map = { | ||
xls: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '45', '78', '63', '65', '6c'], | ||
// 转换成ascii码的含义是 Microsoft Excel | ||
doc: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '57', '6f', '72', '64'], | ||
// 转换成ascii码的含义是 Microsoft Word | ||
ppt: pptFormatList.join(',00,').split(',') | ||
}; | ||
var arr = new Uint8Array(arrayBuffer); | ||
@@ -37,0 +37,0 @@ var str_8 = getSliceArrTo16(arr, 0, 8).join(''); |
{ | ||
"name": "@yiiran/get-file-type", | ||
"version": "1.0.2", | ||
"version": "1.0.3", | ||
"description": "Determine the file type of 'pdf,xls,xlsx,doc,docx,ppt,pptx' according to the file arraybuffer. File suffix or file name is not required. Further more, it can avoid wrong judgment by the falsy changes of file suffix.", | ||
@@ -5,0 +5,0 @@ "main": "build/bundle.js", |
@@ -0,1 +1,19 @@ | ||
const formatMap = { | ||
'pdf': ['25', '50', '44', '46'], | ||
'file2003': ['d0', 'cf', '11', 'e0'], | ||
'file2007': ['50', '4b', '03', '04', '14', '00', '06', '00'], | ||
} | ||
//区分xlsx,pptx,docx三种格式的buffer码。通过每个文件末尾的关键词检索判断 | ||
const format2007Map = { | ||
xlsx: ['77', '6f', '72', '6b', '73', '68', '65', '65', '74', '73', '2f'],// 转换成ascii码的含义是 worksheets/ | ||
docx: ['77', '6f', '72', '64', '2f'],// 转换成ascii码的含义是 word/ | ||
pptx: ['70', '70', '74', '2f'],// 转换成ascii码的含义是 ppt/ | ||
} | ||
//区分xls,ppt,doc三种格式的buffer码,xls从文件开头判断,其他两种从文件末尾判断 | ||
const pptFormatList = ['50', '6f', '77', '65', '72', '50', '6f', '69', '6e', '74', '20', '44', '6f', '63', '75', '6d', '65', '6e', '74'];// 转换成ascii码的含义是 PowerPoint Document | ||
const format2003Map = { | ||
xls: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '45', '78', '63', '65', '6c'],// 转换成ascii码的含义是 Microsoft Excel | ||
doc: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '57', '6f', '72', '64'],// 转换成ascii码的含义是 Microsoft Word | ||
ppt: pptFormatList.join(',00,').split(',') | ||
} | ||
//判断文件类型 | ||
@@ -11,21 +29,2 @@ /** | ||
} | ||
const formatMap = { | ||
'pdf': ['25', '50', '44', '46'], | ||
'file2003': ['d0', 'cf', '11', 'e0'], | ||
'file2007': ['50', '4b', '03', '04', '14', '00', '06', '00'], | ||
} | ||
//区分xlsx,pptx,docx三种格式的buffer码。通过每个文件末尾的关键词检索判断 | ||
const format2007Map = { | ||
xlsx: ['77', '6f', '72', '6b', '73', '68', '65', '65', '74', '73', '2f'],// 转换成ascii码的含义是 worksheets/ | ||
docx: ['77', '6f', '72', '64', '2f'],// 转换成ascii码的含义是 word/ | ||
pptx: ['70', '70', '74', '2f'],// 转换成ascii码的含义是 ppt/ | ||
} | ||
//区分xls,ppt,doc三种格式的buffer码,xls从文件开头判断,其他两种从文件末尾判断 | ||
let pptFormatList = ['50', '6f', '77', '65', '72', '50', '6f', '69', '6e', '74', '20', '44', '6f', '63', '75', '6d', '65', '6e', '74'];// 转换成ascii码的含义是 PowerPoint Document | ||
const format2003Map = { | ||
xls: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '45', '78', '63', '65', '6c'],// 转换成ascii码的含义是 Microsoft Excel | ||
doc: ['4d', '69', '63', '72', '6f', '73', '6f', '66', '74', '20', '57', '6f', '72', '64'],// 转换成ascii码的含义是 Microsoft Word | ||
ppt: pptFormatList.join(',00,').split(',') | ||
} | ||
let arr = new Uint8Array(arrayBuffer); | ||
@@ -32,0 +31,0 @@ let str_8 = getSliceArrTo16(arr, 0, 8).join(''); |
13579