我试图逐行读取文件中的行,但是我不确定如何使用nodejs
打印文件中的行数。
data.js
console.log("123")
console.log("123")
console.log("123")
console.log("123")
file.js
var lineReader = require('readline').createInterface({
input: require('fs').createReadStream('./data.js')
});
lineReader.on('line', function (line) {
console.log('Line from file:', line);
});
我得到了这个输出
文件行:console.log(“ 123”)文件行:
来自文件的行:console.log(“ 123”)来自文件的行:
来自文件的行:来自文件的行: console.log(“ 123”)从文件开始的行:从开始的行 文件:行从文件:行从 文件:console.log(“ 123”)
但是我想要使用节点js文件中有多少行代码
答案 0 :(得分:2)
var i;
var count = 0;
require('fs').createReadStream(process.argv[2])
.on('data', function(chunk) {
for (i=0; i < chunk.length; ++i)
if (chunk[i] == 10) count++;
})
.on('end', function() {
console.log(count);
});
答案 1 :(得分:2)
let count = 0;
var lineReader = require('readline').createInterface({
input: require('fs').createReadStream('./data.js')
});
lineReader.on('data', line => {
for (i=0; i < line.length; ++i) if (line[i] == 10) count++;
})
.on('end', () => {
console.log(count);
})
通过循环文件中的行,您可以用这种方式计算行数。另外,您也可以查看此link以获得更多详细信息
答案 2 :(得分:0)
const fs = require('fs')
fs.readFile('source', 'utf8', (err, data) => {
console.log(data.split('\n').length)
})
首先导入fs库,然后读取文件并通过分割数据来获取长度