准备工作:
1. 来到我们的工作目录$ cd ~/nodejs
2. 如果还没有工作目录,请按下面方式新增
$ cd ~ $ mkdir nodejs $ cd nodejs
目标:异步输出文件内容的行数
这次我们仍然会使用fs
这个Node核心模块,只是会使用”Node.js 风格”的方式解决:异步。
下面开始实际操作:
1. 新建文件node04.js
$ vim node04.js
2. 使用require
方法引入fs
模块
var fs = require('fs');
3. 申明变量file
保存文件路径
var file = process.argv[2];
4. 使用fs.readFile
异步读取内容,并计算行数
fs.readFile(file, function (err, contents) {
var lines = contents.toString().split('\n').length - 1;
console.log(lines);
});
保存退出。
其中function(err, contents){...}
就是readFile的回调函数,当fs
读取完文件后,fs.readFile内部会调用这个方法,我们通过contents
即可获取到文件内容。
5. 运行,请替换下面的”<文件名>”为您自己的
node node04.js <文件名>
结果会输出文件内容的行数
本篇代码
文件:~/nodejs/node04.js
var fs = require('fs');
var file = process.argv[2];
fs.readFile(file, function (err, contents) {
var lines = contents.toString().split('\n').length - 1;
console.log(lines);
});
参考资料:
File System Node.js v0.12.7 Manual & Documentation
learnyounode - MY FIRST ASYNC I/O!