mil*_*od1 7 javascript string buffer file node.js
如何将 Node.js 中的文件作为字符串而不是缓冲区读取?我正在用 Node.js 编写一个程序。在那里我需要同步读取一个文件,但是如果我这样做,它会将它作为缓冲区而不是字符串返回。我的代码看起来像这样:
const fs = require('fs');
let content = fs.readFileSync('./foo.txt');
console.log(content) // actually logs it as a buffer
Run Code Online (Sandbox Code Playgroud)
请帮忙。
小智 13
fs.readFileSync采用第二个参数,允许您使用选项指定 JSON 对象,包括返回数据的编码。如果您不指定一个,则Buffer默认返回一个。因此,您可以将编码添加到此示例以将其作为字符串返回。
让我们将编码选项添加到我们设置content变量的示例中。我们将编码设置为 UTF-8,这是一个标准。
let content = fs.readFileSync('./foo.txt', {encoding: 'utf8'});
如果您不需要指定任何其他选项,还有一个快捷方式:
let content = fs.readFileSync('./foo.txt', 'utf8');
现在当我们登录时content,我们应该有一个String我们使用的结果。
官方文档:https : //nodejs.org/api/fs.html#fs_fs_readfilesync_path_options
| 归档时间: |
|
| 查看次数: |
9204 次 |
| 最近记录: |