如何用代码说明Node.Js文件处理模块
Admin 2022-08-16 群英技术资讯 1186 次浏览
这篇文章主要介绍“如何用代码说明Node.Js文件处理模块”,有一些人在如何用代码说明Node.Js文件处理模块的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。//文件处理类 var fs = require('fs'); var path = require('path'); var util = require('util'); var File = { in : function(content,flag){ this.writeToFile("app.log",content,flag); }, on : function(content,flag){ this.appendToFile("app.log",content,flag); }, writeInFile : function(content,flag){ this.writeToFile("app.log",content,flag); }, writeToFile : function(sourceFile,content,flag){ fs.writeFileSync(sourceFile,util.format(content)); if(flag){ console.log("内容写入成功"); } }, appendToFile : function(sourceFile,content,flag){ fs.appendFileSync(sourceFile,"\n\n*************** " +this.getTime()+" **************\n\n"); fs.appendFileSync(sourceFile,util.format(content)); if(flag){ console.log("内容追加成功"); } }, //复制文件 copyFile : function(sourceFile,targetFile,log){ File.makeDirs(path.dirname(targetFile),function(){ fs.writeFileSync(targetFile,fs.readFileSync(sourceFile)); if(log){ console.log(sourceFile + '->' + targetFile + '复制成功'); } }); }, //文件复制到目录 copyFileToDir :function(sourceFile,targetDir,targetName,log){ //获取文件名 var name = ''; if(targetName != undefined){ var sourceExt = path.extname(sourceFile); var targetExt = path.extname(targetName); //得到后缀一样的文件 name = path.basename(targetName,targetExt) + sourceExt; } else{ name = path.basename(sourceFile); } this.makeDirs(targetDir,function(){ File.copyFile(sourceFile,path.join(targetDir,name),log); }); }, //目录复制 copyDir : function(sourceDir,targetDir,log){ var sourceDirFiles = this.getDirs(sourceDir); sourceDirFiles.forEach(function(item){ //获取相对路径 var relativePath = path.relative(sourceDir,item); var targetAbsolutePath = path.join(targetDir,relativePath); File.copyFile(item,targetAbsolutePath,log); }); console.log("done"); }, makeDirs : function(filepath,callback){ fs.exists(filepath,function(exists){ if(exists){ callback(); } else{ File.makeDirs(path.dirname(filepath),function(){ fs.mkdir(filepath,callback); }); } }); }, getDirs : function(dirpath,result){ if(result == undefined){ result = []; } var dirList = fs.readdirSync(dirpath); dirList.forEach(function(item){ var cfile = path.join(dirpath,item); if(fs.statSync(cfile).isDirectory()){ File.getDirs(cfile,result); }else{ result.push(cfile); } }); return result; }, getTime:function (d){ d = d || new Date(); return d.getHours() + ":" + this.getTwo(d.getMinutes()) + ":" + this.getTwo(d.getSeconds()); }, getTwo:function(m){ return m < 10 ? ("0" + m) : m; } } module.exports = File;
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
在数组的使用中我们通常会有数组的过滤的需求,比如值在某个范围内的数字,用来组成一个新的数组,这就用到了数组的过滤,下面这篇文章主要给大家介绍了关于JS数组中filter方法使用的相关资料,需要的朋友可以参考下
这篇文章主要为大家介绍了前端取消请求及取消重复请求方式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
vue插槽什么作用?vue.js的灵魂是组件,而组件的灵魂是插槽。借助于插槽,我们能最大程度上实现组件复用。对vue插槽的作用有简单的理解后,下面我们俩看看vue插槽实现原理。
你可能在JavaScript项目中都用了console.log。这是一种查看变量的值或程序运行中发生的事情的便捷方法。但是JavaScriptconsole 对象还有许多其他的功能,可以在处理项目时提供帮助。
这篇文章主要给大家分享关于GMT和UTC时区及它们区别的内容,在JavaScript中我们常会使用Date来打印不同的时区,因此了解GMT和UTC时区还是很有必要的,接下来就跟随小编一起来看看吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008