位置: 编程技术 - 正文

详解使用Node.js 将txt文件转为Excel文件(node-js)

编辑:rootadmin

推荐整理分享详解使用Node.js 将txt文件转为Excel文件(node-js),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:地盘正针的详解使用,node的使用,node的使用,node.js用途,node.js用途,node.js使用教程,node.js使用教程,天盘缝针的详解使用,内容如对您有帮助,希望把文章链接给更多的朋友!

最近同事需要对一份报告进行整理,一共有个报告约多行放在一个txt文件中。虽然每份报告的格式比较类似,但其中部分字段对应的数量依旧会有差别。所以真要靠人工来做,无疑会是一件费时费力的并且是很枯燥的工作。据说如果有了这个程序,可以减少%的工作量!那么为了我以后的下午茶,自然应该去尝试一下不是么?

不过既然是费时费力又枯燥的工作,自然就应该交给代码去解决。毕竟,我坚信任何的科学技术就是为了让人类偷懒而存在的。那么就先切入正题,先上GitHub的项目地址。欢迎批评指点。

GitHub项目:report-maker

项目分析

既然准备要上代码了,作为一个狂热的前端爱好者,自然首选Node.js了。这一个项目主要的目的就是将txt文件中的内容按照一定的规则转化为固定格式的表格并导出为Excel。那么重点就可以分为下面两步了。

Excel文件的生成 txt内容的整理

1. Excel文件的生成

详解使用Node.js 将txt文件转为Excel文件(node-js)

Excel文件自然是寻找可以依赖的模块了(毕竟我自己写不出来)。找了一圈,发现js-xlsx这一个模块。虽然看起来很复杂,但其实只要提供好表头和内容就可以,其余只是对于内容数据整理的固定模板。

相关教程可以参考下面这篇,讲的比较详细所以这里就不多做赘述了。

参考教程:使用node-xlsx进行excel文件的读写

2. txt内容的整理

解决了Excel导出的问题(不然就得换Py了呢),文档内容的整理便是这个项目最重要的问题了。最终整理的表格样式以及需要抽出的项目内容已经和同事确认过了。那么接下来就是如何整理了一个有着个长短不一报告的文件了。

首先来看看文件的格式,整个文件的格式类似于下面这样。

可以看出,每一个段落是以Policy Name为分界的。那么,利用fs.readFile将完整的文件读取进来,作为一个字符串使用split方法进行切割。具体代码如下:

然后针对数组中每一个元素(一个段落)根据之前文件中所需要项目,使用正则表达式切提取出所需要的内容,然后将提取出的内容组成所需要的数据结构,具体代码如下。其中schedule项目中内容也并非在一行中,所以也同样使用上面的方法进行切割。而对于其他的项目,则通过正则表达式来进行内容的获取。

主要逻辑处理完以后,把收集到的内容传给excel处理模块,导出成文件就能解决问题了。

不过似乎最终如果能导出为Word,似乎更好。看来还有新的改进空间还留着呢。

标签: node-js

本文链接地址:https://www.jiuchutong.com/biancheng/382140.html 转载请保留说明!

上一篇:用node和express连接mysql实现登录注册的实现代码(node的express干什么用)

下一篇:Node.js 回调函数实例详解(nodejs回调函数例子 getdata check)

  • 增值税发票确认平台怎么认证发票
  • 申报纳税的意思
  • 工资个人所得税怎么算
  • 开发商交的税费是什么
  • 帮忙劳务派遣
  • 计入投资收益的手续费
  • 农业免税企业账户怎么查
  • 建筑企业预收款开具不征税发票为什么要预缴
  • 委托加工农产品的扣除率
  • 事业单位为职工代扣代缴个人所得税
  • 货代行业增值税
  • 车间管理人员工资总额占车间工资总额的10%
  • 子公司给母公司开票
  • 预提费用入账依据
  • 地税局开票需要什么资料
  • 理论增值额的含义
  • 房改房继承需要原单位开证明吗
  • 小微企业利润亏损原因
  • 财务负责人必须是本公司员工吗
  • 税控系统维护费280会计分录
  • 融资租赁纳税人是指
  • 进项认证转出 会计得入账吗
  • excel合并的单元格怎么填充序列
  • php常用函数
  • 季度成本分析报告
  • Windows 2003 SP2 简体中文版下载地址
  • 小规模纳税人和一般纳税人哪个好
  • 房屋产权置换怎么交税?
  • php数组函数有哪些
  • 如何使用vim创建文件
  • 向境外支付技术服务费怎里面的增值税怎么入账
  • 工地需要安装什么标识牌
  • vue解决数据量过大的问题
  • 手机忘记密码怎么解开锁华为
  • 股东增资是不是利好
  • laravel注入
  • php多条件搜索功能的实现
  • php zend原理
  • trap指令在用户态执行
  • 基本户提取备用金需要带什么资料
  • 三栏式明细账需要每笔结余额吗
  • 汇算清缴时期间费用是负数
  • python中numpy数组和列表的区别
  • vscode yaml插件
  • c语言f lf
  • 销售熟食卤制品怎么做
  • 无追保理是投资还是投资
  • 坏账的计算公式
  • 哪些人可以享受职业培训补贴
  • 发票有别的字迹有影响吗
  • 房地产开发企业成本核算方法
  • 影响债券投资收益率的因素有
  • 让渡资产使用权收入属于收入吗
  • 决算清理期和库款报解整理期
  • 房屋租赁费怎么记账
  • 房地产企业帐套设置
  • 资产负债表中的固定资产是原值还是净值
  • 药品进销差价科目明细
  • mysql中增删改查语句
  • sqlserver存储过程怎么查看
  • win8装不了itunes
  • win10 64位开机卡在登录界面的解决办法
  • WinXP系统能上qq但打不开网页原因分析及解决方法
  • solaris版本查询
  • explorer.exe进程100%
  • win1020h2正式版
  • 如何检测电脑能否上网
  • win 10 ie浏览器
  • windows8.1的图片
  • win8怎么添加wifi
  • jquery插件怎么用到自己的网站
  • python火车订票系统
  • javascript基于什么的语言
  • jQuery中ajax的load()与post()方法实例详解
  • unity飞机大战游戏毕业论文
  • 详解Python装饰器由浅入深
  • 物业公司收取物业费要交税吗
  • 企业房产税计算器
  • 安徽省渔业管理办法第十条规定
  • 业务招待费进项可以抵扣吗为什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设