我是 Node.js 的新手,我正在尝试独自学习。我有一个简单的任务来执行以下操作: - 读取文件(提供购买第一个命令行参数)。 -打印文件中的行数。 -我正在使用 readFileSync 方法。
代码正在运行,但输出很奇怪。我尝试打印每条语句,我认为问题出在数据读取上。谁能告诉我哪里错了?
function numLines(){
var fs = require('fs');
var num = 0;
var contents = fs.readFileSync(process.argv[0]);
console.log(contents.toString());
return num;
}
忽略返回语句,请只关注 readFileSync。打印内容时,打印出来的文字全是奇怪的字符,好像读错了一样
最佳答案
var contents = fs.readFileSync(process.argv[0]);
process.argv[0]
实际上并不是传递给脚本的第一个参数。这是命令 node
。第二项是您的脚本的文件名,它被传递给 node
,假设您将其称为 node myscript.js somefile.txt
。您需要获取第三个 项:process.argv[2]
关于javascript - readFileSync 不适用于我。将输入设置为字符串后,我尝试打印输入,但很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29797461/