現在、haxe ノード ターゲットの場合、非同期の側面により、行番号を読み取るアプローチがおそらく少し異なるため、簡単にするサンプル ラッパーを追加すると便利であると考えられます。クラスにファイル パス、処理する関数を渡すだけです。処理が終了したときの行と関数。
package saver;
import js.node.Fs;
import js.node.Readline;
class Reader{
var onLine: Int->String->Void;
var finished: Void->Void;
var lineNo: Int;
public function new( file_: String
, onLine_: Int->String->Void
, finished_: Void->Void ){
onLine = onLine_;
finished = finished_;
var file = file_;
lineNo = 0;
var readLine = Readline.createInterface({
input: Fs.createReadStream( file )
});
readLine.on('line', onReadLine );
readLine.on('close', onFinished );
}
function onReadLine( str ){
onLine( lineNo, str );
lineNo++;
}
function onFinished( ){
finished();
}
}
Electron アプリで Node を使用している場合は、hxml でこれらが必要になる可能性があります。
-lib 電子
-lib hxnodejs