Node.js readline缺少最后一行文件?

时间:2013-08-26 18:04:49

标签: node.js coffeescript readline

我正在尝试在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

它工作正常,但除非由换行符终止,否则永远不会报告最后一行文件。有没有办法解决这个问题(当然,手动添加换行符除外)?

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)