当前位置: 首页 > news >正文

广州做淘宝的化妆品网站好站长之家论坛

广州做淘宝的化妆品网站好,站长之家论坛,网页设计行业,莆田做网站使用nodejs输出著作权申请所需的word版源码 背景 软件著作权申请需要提供一份80页的word版源代码,如果手工复制源码到word文档中,工作量将无聊到让任何一个DAO人员血压爆表,因此我们不得不编写一个简单的文本处理代码,通过自动方…

使用nodejs输出著作权申请所需的word版源码

背景

软件著作权申请需要提供一份80页的word版源代码,如果手工复制源码到word文档中,工作量将无聊到让任何一个DAO人员血压爆表,因此我们不得不编写一个简单的文本处理代码,通过自动方式将项目源码输出到word文档中。

实现逻辑

指定一个代码目录,通过递归扫描该目录及其所有子级目录下的文件(可指定文件类型),然后按行读取文件中的代码,输出到word文档中。

实现代码

本次我们使用nodejs来实现以上逻辑,将当前目录下的codes目录中的所有代码输出到word文件merged_files.docx中。

const fs = require('fs-extra');
const path = require('path');
const readline = require('readline');
const docx = require("docx");const graphs = [];async function readFileContent(filePath) {return fs.readFile(filePath, 'utf8');
}function createParagraph(text) {const paragraph = new docx.Paragraph({ children: [new docx.TextRun(text)] });graphs.push(paragraph);
}function readLineContent(fullPath) {return new Promise((resolve, reject) => {const readStream = fs.createReadStream(fullPath);const rl = readline.createInterface({input: readStream,crlfDelay: Infinity});rl.on('line', (line) => {// console.log('Line from file:', line);createParagraph(line);});rl.on('close', () => {resolve();});});
}async function convertDirectoryToDocx(directoryPath) {try {const files = await fs.readdir(directoryPath, { withFileTypes: true });for (const file of files) {const fullPath = path.join(directoryPath, file.name);if (file.isDirectory()) {await convertDirectoryToDocx(fullPath); // 递归处理子目录} else {await readLineContent(fullPath);// 添加空行createParagraph('                 ');createParagraph('                 ');createParagraph('                 ');createParagraph('                 ');createParagraph('                 ');}}} catch (err) {console.error(`读取目录出错: ${directoryPath}`, err);}
}async function createDocx() {const inputDir = './codes'; // 输入目录路径await convertDirectoryToDocx(inputDir);const doc = new docx.Document({sections: [{properties: {},children: graphs,},],});const outputDocx = './merged_files.docx'; // 输出的.docx文件路径docx.Packer.toBuffer(doc).then((buffer) => {fs.writeFileSync(outputDocx, buffer);console.log(`文件已合并至: ${outputDocx}`);});
}createDocx();
http://www.zhongyajixie.com/news/43155.html

相关文章:

  • wordpress语法开鲁网站seo转接
  • 个人微信crm系统石家庄seo结算
  • 做电影网站用什么程序百度指数在哪里看
  • 扬州建设机械网站惠州seo关键词排名
  • 网站登录页面模板seo排名优化关键词
  • js网站开发视频中文搜索引擎排行榜
  • 设计师 网站 贵关键词优化价格表
  • 网站不备案影响收录吗google下载app
  • 怎么免费做网站视频教学微营销软件
  • 做本地网站赚钱吗百度搜索网
  • 网页设计的方法及内容石家庄百度关键词优化
  • 百度收录网站百度ocpc怎么优化
  • 怎样在设计网站做图赚钱广告投放平台排名
  • wordpress全站https销售人员培训课程有哪些
  • 高端网站定制开发百度关键词优化培训
  • 学做ps的软件的网站有哪些内容球队积分排名
  • 北京平台网站建设价位引流软件下载站
  • 河南建设厅官网证件查询入口西安seo优化系统
  • 河北省住房城乡建设局网站北京网站优化企业
  • 温州 网站建设公司灰色关键词排名优化
  • 沧州网站建设公司外链seo招聘
  • 凡科网站后台在哪里.日本网站源码
  • 电子商务网站建设与维护期末答案武汉百捷集团百度推广服务有限公司
  • 点点 网站建设线下推广方法有哪些
  • 网站显示正在建设是什么意思网络销售技巧和话术
  • ppt做网站快照网站
  • 广州合优网络科技有限公司南宁优化网站网络服务
  • 优化推广网站怎么做百度搜索资源
  • 教育一对一直播网站建设百度指数里的资讯指数是什么
  • 国内最大的域名交易平台全国推广优化网站