- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想使用上传的 'file.txt' ,使用 multer 和 line-by-line 模块。用 multer 上传文件后,我试图检查数据,我得到了一个缓冲区对象,但我不知道如何访问数据并使用逐行模块处理它。这是我的代码:
var express = require("express"),
fs = require('fs'),
app = express(),
bodyParser = require("body-parser"),
multer = require('multer'),
upload = multer({
dest: 'uploads/',
inMemory:true,
onFileUploadData: function (file, data) {
console.log(data.length + ' of ' + file.fieldname + ' arrived')
}
}),
LineByLineReader = require('line-by-line'),
path = require('path'),
ejs = require("ejs"),
Excel= require("exceljs");
app.engine('html', ejs.renderFile);
app.set('view engine', 'html');
app.use("/static", express.static("public"));
app.use(bodyParser.urlencoded({ extended: true }));
app.post("/GffData", upload.single('file'), function (req, res) {
console.log("this is the request : ", req.file);
fs.readFile(req.file.path, function (err, data) {
if (err) throw err;
// data will contain your file contents
console.log("the data is : ",data)
generateObjectFromGff(data); //this is the function that will use line by line module
});
res.send("done")
})
当我在控制台上看到数据时,我得到一个缓冲区:
<Buffer 4c 6d 6a 46 2e 30 31 09 54 72 69 54 72 79 70 44 42 09 43 44 53 09 33 37 30 34 09 34 37 30 32 09 2e 09 2d 09 30 09 22 49 44 3d 63 64 73 5f 4c 6d 6a 46 ... >
而且逐行模块不能继续处理这个。你能帮我弄清楚吗?
最佳答案
如果您的 data
变量是 Buffer
对象,您可以通过添加空字符串将其轻松转换为字符串:data + ''
。如果您想逐行访问您的文本,您可以将其转换为行数组:
(data + '').split('\n')
关于node.js - 访问 Multer 缓冲区对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36438918/
我有这个用于上传文件的中间件。 @Injectable() export class FilesMiddleware implements NestMiddleware { private sto
我在使用 multer 和 multer-s3 npm 以及 node.js 和express 将图像上传到 S3 时遇到问题。 我已阅读 multer 和 multer-s3 的文档并按照教程进行操
任何人都知道为什么“重命名”函数(以及所有其他 multer 回调)不起作用? var express = require('express'); var multer = require('mul
我有这个nodejs应用程序。很简单。 var express = require('express'); var multer = require('multer'); var upload = m
routes.js module.exports=function(app, upload){ var postingsController=require('../controlle
我正在使用 FormData 上传文件并使用 Multer 在服务器端接收该文件。一切都按预期工作,除了因为我在前端使用 FileSystem API ( https://developer.mozi
我正在使用multer要将图像上传到快速服务器,默认情况下 multer 会创建自动生成/随机文件名(这通常很好),但在我的特殊情况下,我需要文件名与原始文件名相同,我尝试了以下方法: const u
我对 multer/node/express/mongoose/... 相当陌生,我目前正在尝试从具有相同名称的不同输入上传多个文件(我使用reactjs 生成输入)。 这是我的 React 前端:
我正在尝试使用 multer 将文件从客户端的 html 表单上传到服务器端,multer 模块在服务器端处理文件。 这里的事情是一切正常,因为我从服务器收到 200 ok 响应,但文件应该上传到我的
我在 Internet 上到处查看,但没有发现任何看起来像我的问题。我是 Node.JS 的新手,我想使用 Multer 上传两张不同的图片,但格式相同。这是我的表格: Add a prof
我这辈子都无法使 multer 的文件上传正常工作。我已经阅读了数十个教程,遵循了 YT 指南,并搜索了数十个 StackOverflow 问题,但无法通过 Postman 解决问题。 这是路由的页面
我想在单个 post 请求中保存一张图像,这将是用户对 MongoDB 的头像,以及一些用户的信息,使用来自 npm 的名为 multer 的包。不幸的是,只有我在控制台中看到的是错误:TypeErr
我正在使用 Multer 来管理图像上传,当在本地计算机上运行我的应用程序时,一切都运行良好。但现在我尝试部署到 Heroku,我在应用程序日志中收到此错误: Unhandled rejection
我在使用 Multer 保存多个图像时遇到问题 路线如下: router.post('/imagesSection', upload.array('up
我使用 multer . 问题 1 当我将以下代码段放入 app.js app.use(multer({ dest: './uploads' } ).single('file'
我有一个这样的对象数组: data: [ {"image": File, "certificate": File}, {"image": File, "certificate": Fi
我知道我可以通过 multer 通过存储对象更改文件名,如下所示: const storage = multer.diskStorage({ destination: (req, file,
我正在使用 Multer保存我通过表单上传的文件,但我不知道为什么我的代码将它保存为一个奇怪的名称并且没有扩展名,我刚刚使用了文档中的代码。 server.js: const multer = re
我正在尝试将图像(jpg/jpeg/png)从浏览器上传到 NodeJS。我已经阅读了几个教程和论坛上的许多帖子,但似乎很少有人遇到这个特定问题。 我已确保将提供给 multer 的名称 ( uplo
我创建了一个 node.js 服务器,并使用 multer 模块上传一些文件。 我的问题是:我该如何处理错误?就像客户端关闭直到上传完成?抱歉英语不好,我是意大利人。 这是我实际不起作用的代码: va
我是一名优秀的程序员,十分优秀!