javascript - 使用 node.js 读取 Excel 文件

标签 javascript angularjs node.js import-from-excel

好的,我正在使用 FileUploader将我的文件从 Angular 上传到我的 REST API 的模块:

var uploader = $scope.uploader = new FileUploader({
    url: api.getUrl('uploadCompetence',null)
});

这被发送到以下POST功能:

        router.route('/api/uploadCompetence')
        .post(function (req, res) {

        // This is where i want to read the file

            var competence = Competence.build(req.body.location);
            competence.add(function (success) {
                    res.json({message: 'quote created!'});
                },
                function (err) {
                    res.status(err).send(err);
                });
        })

现在我的目标是阅读 excel文件,然后将每一行添加到我的数据库中。

但是我不太确定如何从 Node.js 读取文件我已经调试了我的服务器,但在任何地方都找不到该文件,但正在从我的 Angular 调用 api应用

谁能把我推向正确的方向? :)

最佳答案

有几个不同的库可以解析 Excel 文件 (.xlsx)。我将列出两个我觉得有趣且值得研究的项目。

Node -xlsx

Excel 解析器和生成器。它是一个流行项目的包装器 JS-XLSX ,它是来自 Office Open XML 规范的纯 javascript 实现。

node-xlsx project page

解析文件示例

var xlsx = require('node-xlsx');

var obj = xlsx.parse(__dirname + '/myFile.xlsx'); // parses a file

var obj = xlsx.parse(fs.readFileSync(__dirname + '/myFile.xlsx')); // parses a buffer

ExcelJS

读取、操作电子表格数据和样式并将其写入 XLSX 和 JSON。这是一个活跃的项目。在撰写本文时,最新的提交是 9 小时前。我自己没有测试过,但是这个 api 看起来很广泛,有很多可能性。

exceljs project page

代码示例:

// read from a file
var workbook = new Excel.Workbook();
workbook.xlsx.readFile(filename)
    .then(function() {
        // use workbook
    });

// pipe from stream
var workbook = new Excel.Workbook();
stream.pipe(workbook.xlsx.createInputStream());

关于javascript - 使用 node.js 读取 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28860728/

相关文章:

angularjs - 部署使用 yeoman 制作的 angular.js 应用程序的最佳方式?

javascript - Feross的simple-peer的代码示例是什么?

javascript - 如何从node.js中导出(通过 "require"导入)模块中的函数返回值?

JavaScript:如何使用异步方法?

javascript - $(window).load(function() 并不总是有效

javascript - 如何使用 JavaScript 或 jQuery 中的键盘快捷键触发不同的按钮事件?

javascript - HTML/CSS 复选框文本与 <span> 或 <div> 对齐

javascript - 我的日期时间从 ASP.Net MVC 转换为 Javascript 时会转换成什么

javascript - React 的工作流程是什么

javascript - 如何在甘特图中添加上下文菜单