我有一个文本文件,它只是:
a
b
c
1
2
3
我使用的是Node中的fs,只要它只读取数据并用换行符分隔,我就可以使用它读取数据。
我有:
var fs = require('fs')
var input = fs.readFileSync("./test.txt").toString().split("nn")
console.log(input)
这将返回
[ 'arnbrncrnrn1rn2rn3' ] // [ 'abc 123']
而不是我想要的,那就是
[ 'arnbrnc', '1rn2rn3' ] // [ 'abc', '123' ]
有人能给我解释一下这里的问题吗?此外,如果你不介意解释这意味着什么,那将是惊人的!非常感谢!
你可以试试这个
var fs = require('fs')
var input = fs.readFileSync("./text.txt",'utf-8').replace(/rn/g, " ").trim().split(' ')
console.log(input) //output [ 'a b c', '1 2 3' ]
所以我刚刚找到了一种方法,我感觉很好:facepalm:
因此,由于它是作为一个完整的字符串出现的,我只是进一步拆分它:
var fs = require('fs')
var input = fs.readFileSync("./test.txt").toString().split('nn')
var data = input[0].split("rnrn")
console.log(data[1]) // Correctly outputs ('1n2n3')
我刚刚发现的另一个解决方案也同样有效!
var fs = require('fs')
var input = fs.readFileSync("./test.txt").toString().split('rnrn')
console.log(input[1]) // Also correctly outputs ('1n2n3')
对这篇帖子感到抱歉,但希望这能帮助到其他人!