node.js - 从nodejs中的数据保存文件

标签 node.js file

我有来自 multer lib 的这个对象

var myfiledata = { fieldname: 'file_comic',
  originalname: 'leoncino.jpg',
  encoding: '7bit',
  mimetype: 'image/jpeg',
  buffer: <Buffer ff d8 ff e2 02 1c 49 43 43 5f 50 52 4f 46 49 4c 45 00 01 01 00 00 02 0c 6c 63 6d 73 02 10 00 00 6d 6e 74 72 52 47 42 20 58 59 5a 20 07 dc 00 01 00 19 ... >,
  size: 74448 }

我会将此文件保存在硬盘上

我想使用与此类似的声明

fs.writeFile("./test.png", myfiledata.buffer, 'binary');

最佳答案

向 writeStream 提供缓冲区数据。如果您希望文件保存在不同的路径,请在 fs.createWriteStream('./uploads/' + req.file.originalname) 中提供路径:

app.post('/upload', multer.single('file'), (req, res) => {
    var fileWriteStream = fs.createWriteStream(req.file.originalname);
    fileWriteStream.on('finish', () => {
        console.log('file saved successfully');
        res.send({ message: 'file saved successfully' })
    })
    fileWriteStream.end(req.file.buffer)
})

关于node.js - 从nodejs中的数据保存文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56389408/

相关文章:

node.js - 在 meteor 中使用 NPM 安装 bcrypt 时出错

node.js - 在node.js中处理ZIP-Buffer

javascript - 为什么即使调用 evt.preventDefault();,更改 JavaScript 中的内部 html 也会导致默认操作?

java - 为程序创建 .jar 文件

javascript - NODE JS 取消请求

node.js - 如何订购一个 firebase 集合,然后向每个文档写入一些内容?

node.js - 哪些 Google 域验证 API 用于 Pub/Sub 域验证?

已作为非阻塞打开的管道上的 Python readline

Java:在目录之间复制文件

php - 使用 PHP 列出 .7z、.rar 和 .tar 文件中的文件