如何读取两个.txt文件并将这两个文件转换为2d数组?
我已经有这样的代码了:
var fs = require('fs')
file = './text1.txt'
fs.readFile(file,'utf-8', (e,d) => {
textByLine = d.split('\r\n');
console.log("test : " + textByLine[1])
})
我成功地将文件存储在1d数组中,但是现在我有2个文件,我想将它们存储在2d数组中。 该怎么做?
谢谢
答案 0 :(得分:1)
读取文件并将结果推入该变量后,可以在顶部使用一个空数组作为变量,如下所示:
const 2dArray = [];
const fillArray = (path)=> {
fs.readFile(path,'utf-8', (e,d) => {
2dArray.push(d.split('\r\n')) // the result is already an array.
});
});
之后,您可以像这样调用每个文件:
// read the files and push the result to the variable 2dArray
fillArray('./text1.txt');
fillArray('./text2.txt');
//you can read the 1st result of your 1st file array like this
const firstPartOfArray = 2dArray[0][0]; // text1 first result value
如果您不需要获取结果文件,则强烈建议您使用异步功能。
您还可以使用fs-jetpack package之类的思想来解决此问题,或者使用glob