模块的使用,必须先引入模块

 var fs = require('fs');

1. readFile 和 readFileSync

 var fs = require('fs');
//01 readFile var readFile = (path) => {
fs.readFile(path, (err, data) => {
if (err) throw err;
console.log('文件读取成功');
console.log(data.toString());
});
}
// readFile('./package.json');
//02 readFileSync var readFileSync = (path) => {
var content = fs.readFileSync(path).toString();
console.log(content);
}
readFileSync('./package.json');

2.writeFile 和 readFileSync

将指定内容写入文件,如果该文件不存在,则自动创建文件, appendFile也具有自动创建的功能;

 //03 writeFile

 var writeFile = (path, data) => {
fs.writeFile(path, data, (err) => {
if (err) throw err;
console.log('文件异步写入成功');
})
}
// writeFile('./index.html', '<h1>hello<h1/>'); //04 writeFileSync var writeFileSync = (path, data) => {
fs.writeFileSync(path, data);
console.log('文件同步写入成功');
}
writeFileSync('./index.html', '<h1>hello<h1/>');

3. appendFile 和 appendFileSync

 //05 appendFile(path,data,'utf-8',function(err){})

 var appendFile = (path,data)=>{
fs.appendFile(path,data,'utf-8',(err)=>{
if(err) throw err;
console.log('文件异步添加成功');
})
}
//06 appendFile('./index1.html','<h1>hello</h1>'); var appendFileSync = (path,data)=>{
fs.appendFileSync(path,data);
console.log('文件同步添加成功');
}
appendFileSync('./index2.html','<h1>hello world</h1>');

4. mkdir 和 mkdirSync

 //06 mkdir

 var mkdir=(path)=>{
fs.mkdir(path,(err)=>{
if(err) throw err;
console.log('异步创建文件夹');
})
}
// mkdir('./hello'); //07 mkdirSync
var mkdirSync = (path)=>{
fs.mkdirSync(path);
console.log('同步创建文件夹');
}
mkdirSync('./world');

5. readdir 和 readdirSync

 //08 readdir

 var readdir = (path) =>{
fs.readdir(path,(err,fileNames)=>{
if(err) throw err;
console.log('异步读取文件夹成功');
console.log(fileNames.toString());
})
}
// readdir('./server'); //09 readdirSync var readdirSync = (path)=>{
var fileNames = fs.readdirSync(path);
console.log(fileNames.toString());
}
readdirSync('./server');

6. exists 和 existsSync

 //09 exists

 var exists = (path)=>{
fs.exists(path,(result)=>{
if(result){
console.log('存在该文件夹');
}else{
console.log('不存在该文件夹');
}
});
//如果存在则返回true,不存在返回false;
}
// exists('./hello'); //10 existsSync var result = fs.existsSync('./hello1');
console.log(result);
if(!result){
fs.mkdir('./hello1')
}else{
console.log('已经存在')
}

练习:

1.fs+path练习
01.判断 当前路径下的public是否存在,不存在则创建
02.判断 public下的index.html文件是否存在,不存在则创建 <h1>index</h1>
03.创建成功,取出来数据,添加到当前路径下的static文件夹下的index.html里

2.合并js文件
01.循环js文件夹下所有js文件,合并到一个js文件里
02.如果js文件夹下还有子文件夹,循环子文件夹里面所有的js,也合并到条件1中的同一个js文件中

fs模块(一)的更多相关文章

  1. nodejs模块——fs模块

    fs模块用于对系统文件及目录进行读写操作. 一.同步和异步 使用require('fs')载入fs模块,模块中所有方法都有同步和异步两种形式. 异步方法中回调函数的第一个参数总是留给异常参数(exce ...

  2. node.js系列笔记之fs模块《二》

    一:感触 最近工作比较忙,感觉也比较多,因为工作上的不顺利,再加上加班比较多,所以最近心情不是很好,再加上英语能力差到不行,所以最近半个月学习进度也比较慢, 但还是告诉自己每天都坚持学一点,即使今天心 ...

  3. node.js之fs模块

    一.fs模块的mkdir函数,创建文件夹 var http = require("http"); var fs = require("fs"); var ser ...

  4. [Nodejs] node的fs模块

    fs 模块 Node.js 提供一组类似 UNIX(POSIX)标准的文件操作 API. Node 导入文件系统模块(fs).Node.js 文件系统(fs 模块)模块中的方法均有异步和同步版本,例如 ...

  5. NodeJs Fs模块

    和前面的Http.Url模块一样,Fs模块也是node的核心模块之一,主要用于对系统文件及目录进行读写操作. 基本方法 fs.stat fs.stat可以用来判断是文件还是目录:stats.isFil ...

  6. [js]nodejs初探http/url/fs模块

    难怪我没学会, 因为我的套路有问题. 错误点, 1,大而全 2,不注重思路 学习要领: 1, 小而精 2, 重思路(总结) nodejs特点: 1.node提供了js的运行环境, 一般将node运行在 ...

  7. node(03)--利用 HTTP 模块 URl 模块 PATH 模块 FS 模块创建一个 WEB 服务器

    Web 服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等 Web 客户端提供文档,也可以放置网站文件,让全世界浏览:可以放置数据文件,让全世界下载.目前最主流的三个 We ...

  8. Node.js 文件系统fs模块

    Node.js 文件系统封装在 fs 模块是中,它提供了文件的读取.写入.更名.删除.遍历目录.链接等POSIX 文件系统操作. 与其他模块不同的是,fs 模块中所有的操作都提供了异步的和 同步的两个 ...

  9. 【node】fs模块,文件和目录的操作

    检查文件是否存在,查询文件信息 fs.stat() fs.stat('./server.js', function (err, stat) { if (stat && stat.isF ...

  10. nodejs学习笔记一( sublime、atom开发环境,http模块,fs模块的初识)

    http服务   let server = http.createServer(function(req,res){       });   监听: server.listen(8080);   re ...

随机推荐

  1. BottomupSort算法 c++代码实现

    #include <iostream> using namespace std; #define N 100 int A[N]; static int n; void Initial() ...

  2. CentOS7下使用YUM安装mariadb10

    1:由于centos7 默认使用yum安装MySQL的话就会安装mariadb,只是安装的版本停留在mariadb5.x,版本比较低.如果我们需要安装mariadb10这里就需要删除mariadb-l ...

  3. CentOS 6.8重新安装yum

    问题来源:我在虚拟机上安装vncserver,输入yum install tigervnc tigervnc-server出现问题,所以就重新安装了一遍yum. 具体的过程看如下这个链接:http:/ ...

  4. oh-my-zsh配置

    oh-my-zsh是做什么的 开源的zsh配置工具,它的主题和插件系统可以为zsh扩展外观和很多有用的功能,官方是这样介绍的: Oh-My-Zsh is an open source, communi ...

  5. Window下Jenkins的安装

    之前没接触过持续集成工具,之前只是了解了下自动化部署,最近一直在看自动化集成这块,发现要学的东西好多好多,可能在小公司用的不多,但如果在大公司,如果每个项目都要手动build.deploy的话那也太耗 ...

  6. linux函数的阻塞与非阻塞IO及错误处理

    1.阻塞是指进程等待某一个事件的发生而处于等待状态不往下执行,如果等待的事件发生了则会继续执行该进程.调用系统阻塞函数可能会导致进程阻塞进入睡眠状态. 2.阻塞IO之read读取键盘输入数据 3.li ...

  7. laravel数据库查询返回的数据形式

    版本:laravel5.4+ 问题描述:laravel数据库查询返回的数据不是单纯的数组形式,而是数组与类似stdClass Object这种对象的结合体,即使在查询构造器中调用了toArray(), ...

  8. 全面理解SSD和NAND Flash

    Flash Memory又叫做闪存,是一种非易失性存储器.非易失性是指断电之后数据不会丢失,这里就涉及到断电保护(后面详细讲解). 总体思路 1.NAND Flash的用途. 2.NAND Flash ...

  9. LCS 51Nod 1134 最长递增子序列

    给出长度为N的数组,找出这个数组的最长递增子序列.(递增子序列是指,子序列的元素是递增的) 例如:5 1 6 8 2 4 5 10,最长递增子序列是1 2 4 5 10.   Input 第1行:1个 ...

  10. Struts2简诉

    Struts2框架是基于MVC模式的开源,MVC模式是一种开发方式,主要作用是对组件之间进行隔离,M代表业务逻辑层,V代表视图层,C代表控制层.有利于代码的后期维:Struts2框架的源码主要来于We ...