相关疑难解决方法(0)

在node.js中一次读取一行文件?

我试图一次读一行大文件.我在Quora上发现了一个关于这个问题的问题,但是我错过了一些联系,以使整个事情融合在一起.

 var Lazy=require("lazy");
 new Lazy(process.stdin)
     .lines
     .forEach(
          function(line) { 
              console.log(line.toString()); 
          }
 );
 process.stdin.resume();
Run Code Online (Sandbox Code Playgroud)

我想弄清楚的是我如何从文件而不是STDIN一次读取一行,如本示例所示.

我试过了:

 fs.open('./VeryBigFile.csv', 'r', '0666', Process);

 function Process(err, fd) {
    if (err) throw err;
    // DO lazy read 
 }
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我知道,在一个紧要关头,我可以回到使用像PHP这样的东西,但我想弄清楚这一点.

我认为其他答案不会起作用,因为文件比我正在运行它的服务器大得多.

javascript file-io lazy-evaluation node.js

517
推荐指数
17
解决办法
40万
查看次数

从fs.readFile获取数据

var content;
fs.readFile('./Index.html', function read(err, data) {
    if (err) {
        throw err;
    }
    content = data;
});
console.log(content);
Run Code Online (Sandbox Code Playgroud)

记录undefined,为什么?

javascript node.js

277
推荐指数
14
解决办法
48万
查看次数

node.js:将文本文件读入数组.(每行都是数组中的一个项目.)

我想将一个非常非常大的文件读入node.js中的JavaScript数组.

所以,如果文件是这样的:

first line
two 
three
...
...
Run Code Online (Sandbox Code Playgroud)

我会有阵列:

['first line','two','three', ... , ... ] 
Run Code Online (Sandbox Code Playgroud)

该函数看起来像这样:

var array = load(filename); 
Run Code Online (Sandbox Code Playgroud)

因此,将它全部作为字符串加载然后拆分它的想法是不可接受的.

javascript node.js

147
推荐指数
9
解决办法
23万
查看次数

在Node.js中解析巨大的日志文件 - 逐行读取

我需要在Javascript/Node.js中解析大型(5-10 Gb)日志文件(我正在使用Cube).

日志看起来像:

10:00:43.343423 I'm a friendly log message. There are 5 cats, and 7 dogs. We are in state "SUCCESS".
Run Code Online (Sandbox Code Playgroud)

我们需要读取每一行,进行一些解析(例如剥离5,7然后SUCCESS),然后使用他们的JS客户端将这些数据泵入Cube(https://github.com/square/cube).

首先,Node中逐行读取文件的规范方式是什么?

这似乎是在线相当常见的问题:

许多答案似乎指向一堆第三方模块:

但是,这似乎是一项相当基本的任务 - 当然,在stdlib中有一种简单的方法可以逐行读取文本文件吗?

其次,我需要处理每一行(例如,将时间戳转换为Date对象,并提取有用的字段).

什么是最好的方法,最大化吞吐量?是否有某种方法不会阻止每行读取或将其发送到Cube?

第三 - 我猜测使用字符串拆分,并且JS等价的contains(IndexOf!= -1?)将比正则表达式快得多?有没有人在Node.js中解析大量文本数据方面有很多经验?

干杯,维克多

parsing logfile-analysis node.js

104
推荐指数
7
解决办法
8万
查看次数

如何在NodeJS中将文件转换为字符串

我正在尝试将文本文件(在我的机器上)转换为字符串。最好/最简单的方法是什么?我正在寻找一个看起来像这样的基本功能:

function fileToString(filepath) {
   //this returns a string with the contents of the file
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

编辑:我现在知道还有另一个问题会问这个问题,但我不明白那个问题,所以我用不同的词问了它。

javascript string file readfile node.js

5
推荐指数
2
解决办法
8224
查看次数