我试图执行以下代码:
var fs = require("fs");
var data = fs.readFileSync("text.txt");
console.log(data.tostring());
console.log("End Here");
下面的内容出现在我的输出屏幕上:
C:UsersSURYA TEJADesktopNode JSnode examplesblocking.js:3
console.log(data.tostring());
^
TypeError: data.tostring is not a function
at Object.<anonymous> (C:UsersSURYA TEJADesktopNode JSnode examplesblocking.js:3:18)
at Module._compile (internal/modules/cjs/loader.js:1200:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:122
0:10)
at Module.load (internal/modules/cjs/loader.js:1049:32)
at Function.Module._load (internal/modules/cjs/loader.js:937:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run
_main.js:71:12)
at internal/main/run_main_module.js:17:47
您可以在这里使用处理编码的示例,这样在这种情况下就不需要运行toString((:
// Node.js program to demonstrate the
// fs.readFileSync() method
// Include fs module
const fs = require('fs');
// Callling the fs.readFile() method
// for reading file 'input1.txt'
fs.readFile('./input1.txt',
{encoding:'utf8', flag:'r'},
function(err, data) {
if(err)
console.log(err);
else
console.log(data);
});
// Calling the fs.readFileSync() method
// for reading file 'input2.txt'
const data = fs.readFileSync('./input2.txt',
{encoding:'utf8', flag:'r'});
// Display data
console.log(data);
您也可以添加类似if(data) console.log(data.toString();
的检查
这不是data.tostring((,而是data.toSring((;大写"S"。