我使用以下代码从本地系统读取文件:
var fs = require('fs');
var text = fs.readFileSync("./men.text");
var textByLine = text.split("\n")
console.log(textByLine);
我使用以下代码从本地系统读取文件:
var fs = require('fs');
var text = fs.readFileSync("./men.text");
var textByLine = text.split("\n")
console.log(textByLine);
注意:fs
是一个Node.js模块,无法在浏览器中使用。
导入fs
模块,
readFileSync
将为您提供缓冲区。
要使用split()
函数,您必须将Buffer
转换为String
。
var fs = require('fs')
var text = fs.readFileSync("./men.text");
var string = text.toString('utf-8') // converting the Buffer into String
var textByLine = string.split("\n")
console.log(textByLine);
▼ 更新 ▼
服务器端
fs
是一个 Node.js 内置模块,不能在浏览器端(客户端)使用。在服务器端使用 fs
进行操作,获取数据并按所需格式进行处理,然后可以使用 html
、ejs
等多种模板引擎进行渲染。
这里我创建了一个使用 express 的 Node.js 服务器,从浏览器访问 http://localhost:8000/
将得到数据数组。
您可以使用 res.render
格式化您的数据并将其呈现为 .ejs
或 html
文件。
app.js
var express = require('express');
var app = express();
var fs = require('fs')
app.get('/', function (request, response) {
var text = fs.readFileSync("./men.text");
var string = text.toString('utf-8')
var textByLine = string.split("\n")
console.log(textByLine);
response.send(textByLine);
});
app.listen('8000');
虚拟输出:
fs
是一个 Node.js 模块。如果你想在浏览器中加载文本文件,则可以使用来自 Express 路由的 HTML、EJS 进行渲染,或者使用 AJAX 请求来访问它们。 - parwatcodes对于仍在其电子应用程序中遇到未定义函数的所有人:
解决方案(至少对我而言)是改为不使用:
const fs = require('fs');
而是使用:
const fs = window.require('fs');
这样就可以解决我遇到的所有问题。
注意:保留html标签,本文中的"Original Answer"翻译成"最初的回答"。
var fs = require('fs');
var text = fs.readFileSync('./men.text', 'utf8');
var textByLine = text.split("\n");
console.log(textByLine);
fs
?忘记导入了吗? - Tushar