node读写Excel操作实例分析


Posted in Javascript onNovember 06, 2019

本文实例讲述了node读写Excel操作。分享给大家供大家参考,具体如下:

目支持写Excel的node.js模块:

  • node-xlsx: 基于Node.js解析excel文件数据及生成excel文件;
  • excel-parser: 基于Node.js解析excel文件数据,支持xls及xlsx格式文件;
  • excel-export : 基于Node.js将数据生成导出excel文件,生成文件格式为xlsx;
  • node-xlrd: 基于node.js从excel文件中提取数据,仅支持xls格式文件。

下面通过node-xlsx模块来操作Excel文件。

1、安装node-xlsx模块

每次npm的时候,走国外的镜像,非常的慢,甚至安装失败,可以配置一下

通过改变默认npm镜像代理服务,以下三种办法任意一种都能解决问题,建议使用第三种,将配置写死,下次用的时候不用重新配置。

通过config命令

npm config set registry https://registry.npm.taobao.org

npm info underscore (如果上面配置正确这个命令会有字符串response)

命令行指定

npm --registry https://registry.npm.taobao.org info underscore

编辑 ~/.npmrc 加入下面内容

registry = https://registry.npm.taobao.org

注:有时候执行npm会失败,提示

Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\node_modules\npm\bin\npm-cli.js'

此时发现node_modules文件夹下npm文件加不存在,经常会出现这样的情况,于是我对此文件夹做个备份。

node读写Excel操作实例分析

安装node-xlsx

npm install node-xlsx

安装成功后,会在node_modules文件夹存在node-xlsx文件夹

2、读写xlsx

JavaScript Code

var xlsx = require('node-xlsx');
var fs = require('fs');
var data = [
  {
    name : 'sheet1',
    data : [
      [
        'ID',
        'Name',
        'Score'
      ],
      [
        '1',
        'Michael',
        '99'
      ],
      [
        '2',
        'Jordan',
        '98'
      ]
    ]
  },
  {
    name : 'sheet2',
    data : [
      [
        'AA',
        'BB'
      ],
      [
        '23',
        '24'
      ]
    ]
  }
]
// 写xlsx
var buffer = xlsx.build(data);
fs.writeFile('./resut.xls', buffer, function (err)
{
  if (err)
    throw err;
  console.log('Write to xls has finished');
// 读xlsx
  var obj = xlsx.parse("./" + "resut.xls");
  console.log(JSON.stringify(obj));
}
);

注意:文件扩展名可以是xls,也可以是xlsx

运行后输出:

node读写Excel操作实例分析

附录:使用nodemon让node自动重启

在我们开发node项目的时候,修改了服务的代码,但是node并自动重启来生效,必须手动去重启一下,这样很烦人的啊,很浪费时间,于是就有大神开发了自动重启的工具——nodemon,很简单的。

npm install -g nodemon

此时就可以用nodemon来代替node命令,执行服务器端js脚本了~

node读写Excel操作实例分析

 希望本文所述对大家node.js程序设计有所帮助。

Javascript 相关文章推荐
js用图作提交按钮或超连接
Mar 26 Javascript
学习ExtJS Window常用方法
Oct 07 Javascript
Jquery练习之表单验证实现代码
Dec 14 Javascript
每天一篇javascript学习小结(Function对象)
Nov 16 Javascript
jQuery插件ajaxFileUpload使用详解
Jan 10 Javascript
微信小程序开发图片拖拽实例详解
May 05 Javascript
在vue中使用jointjs的方法
Mar 24 Javascript
vue2.0 获取从http接口中获取数据,组件开发,路由配置方式
Nov 04 Javascript
node爬取新型冠状病毒的疫情实时动态
Feb 06 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
Apr 09 Javascript
Vue3 的响应式和以前有什么区别,Proxy 无敌?
May 20 Javascript
微信小程序仿抖音视频之整屏上下切换功能的实现代码
May 24 Javascript
详解vue页面首次加载缓慢原因及解决方案
Nov 06 #Javascript
electron 安装,调试,打包的具体使用
Nov 06 #Javascript
weui中的picker使用js进行动态绑定数据问题
Nov 06 #Javascript
在vue中阻止浏览器后退的实例
Nov 06 #Javascript
vue 关闭浏览器窗口的时候,清空localStorage的数据示例
Nov 06 #Javascript
vue项目强制清除页面缓存的例子
Nov 06 #Javascript
关于vue路由缓存清除在main.js中的设置
Nov 06 #Javascript
You might like
php smarty的预保留变量总结
2008/12/04 PHP
codeigniter数据库操作函数汇总
2014/06/12 PHP
yii使用activeFileField控件实现上传文件与图片的方法
2015/12/28 PHP
PHP PDO操作MySQL基础教程
2017/06/05 PHP
PHP实现的多维数组排序算法分析
2018/02/10 PHP
Laravel 关联模型-关联新增和关联更新的方法
2019/10/10 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
神奇的代码 通杀各种网站-可随意修改复制页面内容
2008/07/17 Javascript
javascript prototype 原型链
2009/03/12 Javascript
几个有趣的Javascript Hack
2010/07/24 Javascript
Jquery时间验证和转换工具小例子
2013/07/01 Javascript
jquery cookie实现的简单换肤功能适合小网站
2013/08/25 Javascript
JavaScript极简入门教程(二):对象和函数
2014/10/25 Javascript
在js中实现邮箱格式的验证方法(推荐)
2016/10/24 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
Node.js利用js-xlsx处理Excel文件的方法详解
2017/07/05 Javascript
vue获取DOM元素并设置属性的两种实现方法
2017/09/30 Javascript
jQuery进阶实践之利用最优雅的方式如何写ajax请求
2017/12/20 jQuery
使用vue2实现购物车和地址选配功能
2018/03/29 Javascript
vue+springmvc导出excel数据的实现代码
2018/06/27 Javascript
JS中通过url动态获取图片大小的方法小结(两种方法)
2018/10/31 Javascript
vue实现一个获取按键展示快捷键效果的Input组件
2021/01/13 Vue.js
linux下安装easy_install的方法
2013/02/10 Python
python统计cpu利用率的方法
2015/06/02 Python
Python 操作文件的基本方法总结
2017/08/10 Python
linux环境下的python安装过程图解(含setuptools)
2017/11/22 Python
Python实现简单http服务器
2018/04/12 Python
Python基于whois模块简单识别网站域名及所有者的方法
2018/04/23 Python
python调用OpenCV实现人脸识别功能
2018/05/25 Python
使用K.function()调试keras操作
2020/06/17 Python
css3实现的下拉菜单效果示例
2014/01/22 HTML / CSS
CSS3使用transition实现的鼠标悬停淡入淡出
2015/01/09 HTML / CSS
教育科学研究生自荐信
2013/10/09 职场文书
毕业自荐信
2013/12/16 职场文书
2015入党自传格式范文
2015/06/26 职场文书
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers