1. 使用Node.jsfs模块必须在electron项目里
  1. /*
    1. fs.stat 检测是文件还是目录(目录 文件是否存在)
  1. 2. fs.mkdir 创建目录 (创建之前先判断是否存在)
  2. 3. fs.writeFile 写入文件(文件不存在就创建,但不能创建目录)
  3. 4. fs.appendFile 写入追加文件
  4. 5.fs.readFile 读取文件
  5. 6.fs.readdir 读取目录
  6. 7.fs.rename 重命名
  7. 8. fs.rmdir 删除目录
  8. 9. fs.unlink 删除文件
  9. */
  10. var fs=require('fs'); //fs是node.js的核心模块,不用下载安装,可以直接引入
  11. // fs.stat 检测是文件还是目录 fs.statSync()同步获取stats对象,通过返回值接收。
  12. fs.stat('html',function(error,stats){
  13. if(error){
  14. console.log(error);
  15. return false;
  16. }
  17. console.log('文件:'+stats.isFile());
  18. console.log('目录:'+stats.isDirectory());
  19. })
  20. //fs.mkdirSync 创建文件---同步创建
  21. fs.mkdirSync(`D:/Rabbit3`);
  22. //fs.mkdir 创建文件---异步创建
  23. fs.mkdir('D:/Rabbit2',function(error){
  24. if(error){
  25. console.log(error);
  26. return false;
  27. }
  28. console.log('创建目录成功');
  29. })
  30. //fs.appendFile 追加文件
  31. fs.appendFile('D:/Rabbit2/123.txt','这是写入的内容\n',function(error){
  32. if(error){
  33. console.log(error);
  34. return false;
  35. }
  36. console.log('写入成功');
  37. })
  38. //fs.writeFile 写入文件(会覆盖之前的内容)(文件不存在就创建) utf8参数可以省略
  39. fs.writeFile('123.txt','你好nodejs 覆盖','utf8',function(error){
  40. if(error){
  41. console.log(error);
  42. return false;
  43. }
  44. console.log('写入成功');
  45. })
  46. //fs.appendFile 追加文件
  47. fs.appendFile('123.txt','这是写入的内容\n',function(error){
  48. if(error){
  49. console.log(error);
  50. return false;
  51. }
  52. console.log('写入成功');
  53. })
  54. //fs.readFile 读取文件
  55. fs.readFile('123.txt',function(error,data){
  56. if(error){
  57. console.log(error);
  58. return false;
  59. }
  60. //console.log(data); //data是读取的十六进制的数据。 也可以在参数中加入编码格式"utf8"来解决十六进制的问题;
  61. console.log(data.toString()); //读取出所有行的信息
  62. })
  63. //fs.readdir 读取目录下第一级内容 把目录下面的文件和文件夹都获取到。
  64. fs.readdir('html',function(error,data){
  65. if(error){
  66. console.log(error);
  67. return false;
  68. }
  69. console.log(data); //data是数组类型,包含文件夹以及文件的名字(只有第一级目录内容)。拿到一个文件夹下面的所有目录
  70. })
  71. //fs.rename 重命名 1.改名 2.剪切文件(移动)
  72. fs.rename('html/index.html','html/news.html',function(error){
  73. if(error){
  74. console.log(error);
  75. return false;
  76. }
  77. console.log('修改名字成功');
  78. })
  79. //fs.rmdir 删除目录 rmdir 这个方法只能删除目录,不能删除文件
  80. fs.rmdir('abc目录',function(error){
  81. if(error){
  82. console.log(error);
  83. return false;
  84. }
  85. console.log('删除目录成功');
  86. })
  87. //fs.unlink删除文件
  88. fs.unlink('index.txt',function(error){
  89. if(error){
  90. console.log(error);
  91. return false;
  92. }
  93. console.log('删除文件成功');
  94. })
  95. //fs.createReadStream 从文件流中读取数据,读取的文件比较大时建议用流的方式读取,文件比较大会多次读取。
  96. var fileReadStream = fs.createReadStream( 'data1.json');
  97. var str = '';
  98. fileReadStream.on('data', (data) => {
  99. console.log("接收到" + data.length); //文件比较大时,会多次读取,多次执行该回调函数
  100. str += data;
  101. })
  102. fileReadStream.on('end', () => {
  103. console.log(" --- 结束 ---");
  104. console.log( str );
  105. })
  106. fileReadStream.on('error', (error) => {
  107. console.log(error)
  108. })
  109. //fs.createWriteStream 写入文件流
  110. var data = "我是从数据库获取的数据,我要保存起来";
  111. var writerStream = fs.createWriteStream('D:/Rabbit3/123.txt');
  112. writerStream.write( data , 'UTF8' );
  113. writerStream.end(); //标记文件末尾 结束写入流,释放资源
  114. writerStream.on( 'finish', function() {
  115. console.log("写入完成。");
  116. });
  117. writerStream.on( 'error', function(error){
  118. console.log(error.stack);
  119. });
  120. console.log("程序执行完毕");
  121. //pipe 管道流
  122. var fs = require("fs");
  123. var readerStream = fs.createReadStream( 'input.txt');
  124. var writerStream = fs.createWriteStream( 'output.txt');
  125. readerStream.pipe( writerStream );
  126. console.log("程序执行完毕");
  127. //fs.access 判断目录、文件是否存在(读写权限)
  128. var fs = require('fs');
  129. fs.access('package.json',(err)=>{
  130. console.log(err ? '目录/文件不存在': '文件存在,可以进行读写');

node.js—创建、删除、追加文件等方法汇总的更多相关文章

  1. Node.js 创建HTTP服务器

    Node.js 创建HTTP服务器 如果我们使用PHP来编写后端的代码时,需要Apache 或者 Nginx 的HTTP 服务器,并配上 mod_php5 模块和php-cgi. 从这个角度看,整个& ...

  2. Node.js 创建HTTP服务器(经过测试,这篇文章是靠谱的T_T)

    Node.js 创建HTTP服务器 如果我们使用PHP来编写后端的代码时,需要Apache 或者 Nginx 的HTTP 服务器,并配上 mod_php5 模块和php-cgi. 从这个角度看,整个& ...

  3. 极简 Node.js 入门 - 3.2 文件读取

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  4. node.js在windows下的学习笔记(5)---用NODE.JS创建服务器和客户端

    //引入http模块 var http = require('http'); //调用http的createServer的方法,这个方法有一个回调函数,这个回调数 //的作用是当有请求发送给服务器的时 ...

  5. [转]用Node.js创建自签名的HTTPS服务器

    用Node.js创建自签名的HTTPS服务器 创建自己的CA机构 创建服务器端证书 创建客户端证书 将证书打包 创建自己的CA机构 为CA生成私钥 openssl genrsa -out ca-key ...

  6. Node.js创建服务器和模拟客户端请求

    1. 何为服务器 服务器是某种长期运行,等待请求资源的应用程序 2. 常见Web应用架构 3. 如何创建web服务器 Web服务器是使用HTTP协议,等待客户端连接后请求资源的驻守应用程序:HTTP协 ...

  7. 转载 jQuery和js自定义函数和文件的方法(全网最全)

    jQuery和js自定义函数和文件的方法(全网最全)    版权声明:本文为像雾像雨又像风_http://blog.csdn.net/topdandan的原创文章,未经允许不得转载. https:// ...

  8. Node.js创建自签名的HTTPS服务器

    https://cnodejs.org/topic/54745ac22804a0997d38b32d  用Node.js创建自签名的HTTPS服务器  发布于 4 年前  作者 eeandrew  6 ...

  9. 使用Node.js给图片加水印的方法

    一.准备工作: 首先,确保你本地已经安装好了node环境. 然后,我们进行图像编辑操作需要用到一个Node.js的库:images. 这个库的地址是:https://github.com/zhangy ...

随机推荐

  1. VMware虚拟机NAT模式无法上外网

    VMware虚拟机NAT模式无法上外网排错思路 1,确保三种模式只有一种在连接 2,确保ip配置正确 配置的子网跟DHCP必须是同一网段 3,确保网关配置正确 网关不管怎么配,一定不要配192.168 ...

  2. Linux日常之以当前时间命名文件

    要求:将当前硬件信息的内容统一以一个文件的形式写入目录date中,且该文件是以“cpu_当前时间.txt”方式命名:    实现该要求主要理解三方面: (1) 显示当前硬件信息的命令:lscpu (2 ...

  3. case_match

    //箭头符号 => 隔开了模式和表达式.//选择器 match {备选项}.//只要发现有一个匹配的case,剩下的case不会继续匹配. //object case_test {//// de ...

  4. NOIP2017 D2T1 奶酪

    洛谷P3958 超级水的并没有用什么几何知识的几何题…… 直接爆搜一遍最后判断有没有与上/下表面相连的球之间连通即可……O(n2)不动脑子的复杂度 最多只是用一下并查集来判断两个点是否连通…… 具体细 ...

  5. 浙大PAT CCCC L3-015 球队“食物链” ( 搜索 && 剪枝 )

    题目链接 题意 : 有 n 个球队,给出主客场胜负图,找出一个序列 1.2.3..... 使得 1 战胜过 2 .2 战胜过 3.3 战胜过 4..... n 战胜过 1 ( 这个序列是 1~n 的其 ...

  6. 七牛云对象存储kodo使用体验

    在这里,我使用了七牛云的对象存储Kodo,和阿里云的OSS,还有腾讯云的COS是同样的产品 oss相关术语 包依赖关系解决 unrecognized import path "golang. ...

  7. 【bzoj4136】[FJOI2015]带子串包含约束LCS问题

    题目描述: 带有子串包含约束的最长公共子序列问题可以具体表述如下. 给定2个长度分别为n和m的序列X和Y,以及一个子串包含约束集S. S中共有k个字符串S={S1,S2,…,Sk},其中字符串Si的长 ...

  8. 进程(process)和线程(thread)

    1.计算机的核心是CPU,它承担了所有的计算任务.它就像一座工厂,时刻在运行. 2.假定工厂的电力有限,一次只能供给一个车间使用.也就是说,一个车间开工的时候,其他车间都必须停工.背后的含义就是,单个 ...

  9. 12 November

    [SCOI2005] Mine BZOJ 1088: 相信大家都玩过扫雷的游戏.那是在一个 n×m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了 ,"余"人国流行起了一种 ...

  10. twitter api的使用

    1.用手机号注册推特账号 https://twitter.com/ 2.进入网站 https://apps.twitter.com/ 创建第一个app,填入基本信息 name写完会检测是否已经存在像我 ...