首页 > 解决方案 > 如何使用 NodeJS 中的 split 方法拆分文本文件?

问题描述

我想拆分一个使用 NodeJS FS 读取的文本文件。当我尝试时,它会返回一个包含编码信息的数组。

我已经尝试解码数组,但它没有返回任何内容。

代码:

const fs = require("fs"); 
var data = fs.readFileSync("data.txt", 'utf-8'); 
var dataArr = data.split('s');  
console.log(dataArr); 

输出:

[ '��t\u0000e\u0000', '\u0000t\u0000' ]
[ '��t\u0000e\u0000', '\u0000t\u0000' ]

文本文件:

test

我希望它返回:

["te", "t"]

标签: node.jsfs

解决方案


根据nodejs网站fs.readFileSync返回一个Buffer或一个String. 最好的方法是不使用fs.readFileSyncuft-8选项,然后将缓冲区更改为uft-8使用toString('utf8')

您的代码中的示例

const fs = require("fs"); 
var data = fs.readFileSync("data.txt"); 
var dataArr = data.toString('utf8').split('s');  
console.log(dataArr); 

推荐阅读