位置: 编程技术 - 正文

详解使用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)

  • 税务登记管理办法2023
  • 非拒付追索待清偿是什么意思
  • 利润表中财务费用为负数是什么意思
  • 个体工商户能否转让
  • 费用的增加会减值吗
  • 一般纳税人公司是什么型企业
  • 交汇算清缴所得吗
  • 办公场所转租赁需要交哪些税费
  • 新成立的公司银行存款如何入账
  • 免税申请怎么办理
  • 离职补偿金公司不付怎么办
  • 增值税发票地址变更后开原来的地址能用吗
  • 补缴税款罚款
  • 个人所得税怎么查
  • 定额发票2019
  • 个人二手房转让税费
  • 会计准则一般选择哪个
  • 酒类应税消费品消费税纳税申报表怎么填
  • 现金折扣列题
  • 增值税的滞纳金是多少
  • 电梯安装包工头赚多少
  • 已经认证抵扣的发票,发生冲红,要怎么处理
  • php current
  • PHP:oci_get_implicit_resultset()的用法_Oracle函数
  • 文竹怎么养才能更旺盛浇点醋
  • 企业为员工提供服务要交增值税吗
  • 偿还不了债务会怎么样
  • 弥补以前年度亏损后缴纳所得税
  • 长期股权投资资本化
  • 固定资产减值准备可以转回吗
  • 资产负债表是不是根据记账凭证生成的
  • 自己的智能ai聊天怎么用
  • es6对象扩展运算符
  • pytorch m1
  • ps中分辨率
  • 企业利润分配的通常去向包括
  • 暂估价与发票价的区别
  • python中lambda用法
  • mongodb修改命令
  • 跨年取得的发票金额大于暂估金额
  • mysql中文乱码解决
  • 主要业务活动是什么意思
  • 现金日记账的登记证据有
  • 当月费用次月报销
  • 长期预付账款涉税
  • 小规模纳税人购进商品会计分录
  • 提取公积金收手续费吗
  • 固定资产折旧计算方法公式大全
  • 建筑图纸设计费多少钱
  • 什么服务费发票可以免税的
  • 新准则固定资产处置的账务处理
  • 应交增值税贷方余额表示什么
  • 公司分红怎么做账
  • 收不回来的其他应收账款如何处理?
  • MySQL中interactive_timeout和wait_timeout的区别
  • innodb_trx表
  • fedora29
  • Win7 64位旗舰版系统中实现照片的批量重命名
  • windows xp的设备管理器在哪
  • fedora linux安装教程
  • jinjia.exe进程
  • autorun.dll
  • ubuntu系统自带的截图工具
  • macbook备忘录字数统计
  • 以root身份建一个目录/test
  • mac 阿里旺旺怎么使用
  • win10登录微软账户后进不去桌面
  • cocos2dx-js
  • jQuery实现非常实用漂亮的select下拉菜单选择效果
  • js 数组 增加元素
  • ubuntu nodejs
  • 基于android的简单程序
  • 什么是质数
  • jquery 扩展事件
  • 北京930末班车时间表
  • 海口市地税局高峰简历
  • 个人限购
  • 地税官网怎么登录
  • 广东省电子税务局app下载官网
  • 南宁市税务局稽查局领导
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设