1、异步式读取文件
代码:
//readfile.js
var fs = require('fs');
fs.readFile('test.txt', 'utf-8', function(err, data) {
if (err) {
console.error(err);
} else {
console.log(data);
}
});
console.log('end.');
解析:
1.1 引入fs 文件模块
require('fs');
1.2 调用fs模块的readFile 方法
fs.readFile();
**注意:这里要建一个test.txt 文件,否则在执行读取的时候会报找不到该文件
效果如下:
代码解析
这里为什么这里是先打印
end 后再打印
I am a text 呢
因为这是异步式,也就是说,fs.readFile()方法调用完后,还没等完全执行完,程序就跑到了
console.log(‘end’)这句代码,所以后面面读取的内容事件循环会主动调用fs.readFile()是最后打印。
那如果想先打印文件内容,然后载打印end呢。请看接下来下面介绍。
2、同步式读取文件
var fs = require('fs');
var data = fs.readFileSync('test.txt','utf-8');
console.log(data);
console.log('end');
结果:
解析:
这里是等待函数完全执行完,以及返回数据之后,再执行下面的语句,阻塞等待完成后继续执行下面的语句。