从文件中获取行 - NodeJS函数

时间:2015-08-30 18:57:54

标签: javascript node.js fs

如何用nodeJS编写一个从文件返回一行的函数?程序在循环中运行,每次调用该函数都应返回一个新字符串。如果文件以第一行再次开始结束。

这个功能是随机的,如何做到一致?

 var fs = require('fs');

 // Get random line from file
 function getRandSocks() {
   var socks = fs.readFileSync('socks.txt').toString().split("\n");
   var randsock = socks[Math.floor(Math.random()*socks.length)];
   return randsock.split(':');
 }

 function loop() {
   // ...
   var socks = getRandSocks();
   console.log('host: '+socks[0]+'port :'+socks[1]);
   //...
   loop();
 }

1 个答案:

答案 0 :(得分:0)

也许这会有所帮助。这将获得下一行并回到开始。它基于给定的getRandSocks函数,具有最小的更改。

var current_line = 0;
function getNextLines() {
   var socks = fs.readFileSync('socks.txt').toString().split("\n");
   var randsock = socks[current_line % socks.length];
   current_line = (current_line + 1) % socks.length
   return randsock.split(':');
}