我使用multer
上传excel文件。在req.file
字段中上传后,我得到了这样的信息:
{ fieldname: 'excel',
originalname: 'contacts-xls.xls',
encoding: '7bit',
mimetype: 'application/vnd.ms-excel',
buffer: <Buffer d0 cf 11 e0 a1 b1 1a e1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3b 00 03 00 fe ff 09 00 06 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 0a 00 ... >,
size: 6656 }
这是我在上传excel.xls
格式文件后得到的..我无法将其转换为字符串..例如,对于csv
文件,我会像这样:
{ fieldname: 'excel',
originalname: 'contacts.csv',
encoding: '7bit',
mimetype: 'text/csv',
buffer: <Buffer 66 69 72 73 74 5f 6e 61 6d 65 2c 6d 69 64 64 6c 65 5f 6e 61 6d 65 2c 6c 61 73 74 5f 6e 61 6d 65 2c 70 68 6f 6e 65 5f 6e 75 6d 62 65 72 5f 66 69 72 73 ... >,
size: 402 }
当我尝试使用req.file.buffer.toString('utf8');
进行转换时。我得到了正确的字符串...但是当我尝试与上面的示例相同时-它不能以相同的方式工作。我看到的是不同的mimentypes
。我认为这是原因。.我也试图找到如何将缓冲区格式从xls
文件格式转换为字符串,但没有发现什么特别的地方。如何解决?