1

在 Node.js 中,当我想将文件的行读入数组时,我会:

fs.readFileSync(filename).split('\r\n')

但这在 Linux 上不起作用。在 Linux 上,我可以这样做:

fs.readFileSync(filename).split('\n')

但这在 Windows 上不起作用。我也可以这样做:

fs.readFileSync(filename).split(/[\r\n]+/)

它适用于两个系统,但难以阅读。

是否有一种简单的、独立于系统的方法将文件读入 Node.js 中的行数组?

4

1 回答 1

4

您可以将常量用于此类需求:

var nl = require('os').EOL;

所以它看起来像:

var nl = require('os').EOL;
fs.readFileSync(filename).split(nl);

或者你可以只使用 RegExp:

fs.readFileSync(filename).split(/\r?\n/)
于 2013-07-24T08:57:01.800 回答