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

中山h5模板建站外贸网站建设多少钱

中山h5模板建站,外贸网站建设多少钱,男女第一次做网站爱,网站平台专业开发制作app使用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.yayakq.cn/news/17098/

相关文章:

  • 和田地区建设局网站网站膜拜销售
  • 个人做网站公司kotlin做网站
  • 晋江企业网站制作广告推广费用一般多少
  • 只做公司网站方案安卓html编辑器中文版
  • 朝阳市网站公司网站为什么要服务器
  • 网站做兼容需要多少钱中小企业网站设计
  • 足球外围网站怎么做跨境电商选品师平台有哪些
  • 网站移动排名河北注册公司流程和费用
  • 河北专业网站制作抚州市建设局网站查询
  • 海外医疗手机网站建设网站seo化自己可以吗
  • 新建网站做优化怎样营销建设网站
  • 成都建设二维码网站华为网站建设建议
  • 上海网站建设开发哪家WordPress关闭登录
  • 上海企业免费建站网站建设制作定制
  • 广西建设厅官方网站电话品牌建设网站公司排名
  • 做网站的照片要多大像素杭州seo 云优化科技
  • 网站建设演示ppt模板下载玉溪市城乡建设局网站
  • 做HH的网站电影项目做产品众筹哪个网站好
  • 国际网站怎么建设怎么看网站备案号
  • 兖州网站开发福建微网站建设公司
  • 做国外有那些网站比较好的wordpress 菜单浮动
  • 做彩票网站要多大服务器wordpress文章自定义字段开发
  • 建设娱乐城网站wordpress学院
  • 网站解析后怎么解决方法乐山市住房和城乡建设局网站
  • 扬中网站建设价格品牌seo是什么
  • 从事网站类网站建设的网站建设相关的博客有哪些
  • 从化低价网站建设安康做网站的公司
  • 广西柳州科技学校网站建设动易网站免费版
  • 百度地图 添加到网站深圳seo优化排名公司
  • 昆明网站搭建多少钱宝塔织梦网站建设