9

我正在尝试在 Node.js 下异步和逐行读取文本文件。我有以下 CoffeeScript 代码:

readline  = require 'readline'
fs        = require 'fs'

#--------------------------------------------------------------------
lines_of = ( route, handler ) ->
  #..................................................................
  stream = readline.createInterface
    input:    fs.createReadStream route
    output:   process.stdout
    terminal: false
  #..................................................................
  stream.on 'close', ->
    handler null, null
  #..................................................................
  stream.on 'error', ( error ) ->
    handler error
  #..................................................................
  stream.on 'line', ( line ) ->
    handler null, line

它工作正常,除非最后一行文件不会被报告,除非它被换行符终止。有什么办法可以解决这个问题(当然,除了手动添加换行符)?

4

2 回答 2

1

您应该为此使用该fs模块,并将文件内容拆分为\n字符以确定行结束的位置。

于 2015-06-10T15:42:07.343 回答
0

自 0.12.2 起似乎已修复https://github.com/nodejs/node-v0.x-archive/issues/7238

于 2020-08-06T15:11:44.647 回答