需要文件作为string
我正在使用节点+快递,我只是想知道如何我可以导入任何文件作为一个string。 比方说,我有一个txt文件,我想要的是加载到一个variables,因此。
var string = require("words.txt");
我反对
modules.exports = function(){ var string = "whatever"; return string; }
如果是针对(less数)特定的扩展,您可以添加自己的require.extensions
处理程序:
var fs = require('fs'); require.extensions['.txt'] = function (module, filename) { module.exports = fs.readFileSync(filename, 'utf8'); }; var words = require("./words.txt"); console.log(typeof words); // string
否则,您可以将fs.readFile
与require.resolve
混合使用:
var fs = require('fs'); function readModuleFile(path, callback) { try { var filename = require.resolve(path); fs.readFile(filename, 'utf8', callback); } catch (e) { callback(e); } } readModuleFile('./words.txt', function (err, words) { console.log(words); });
你将不得不使用filesystem
模块的readFile
函数。
只使用标准库:
var fs = require('fs'); var exec = require('child_process').exec; // async fs.readFile('./data.txt', 'utf8', function(oErr, sText) { console.log(sText); }); // sync console.log(fs.readFileSync('./data.txt', 'utf8'));