Ruby文件I / O中的EOFError是什么?

前端之家收集整理的这篇文章主要介绍了Ruby文件I / O中的EOFError是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
official documentation没有指定.我明白EOFError意味着“结束文件错误”,但究竟是什么意思?如果文件读取器到达文件的末尾,那听起来不像我的错误.

解决方法

EOFError在所有IO中都是方便的,该类是Ruby中所有输入/输出的基础.现在还记得核心的Unix概念:一切都是一个文件.这包括插座.所以,如果你有一些套接字打开并正在读取它,一个特殊的条件可能是遇到文件的结尾.

所有的例子都显示了EOFError的微不足道的使用(同时读取一些文本文件),这些并不真正有用.然而,开始挖掘net / http或其他使用套接字的类,你会看到使用这个异常.

编辑为从net / ftp添加此示例

def getline
  line = @sock.readline # if get EOF,raise EOFError
  line.sub!(/(\r\n|\n|\r)\z/n,"")
  if @debug_mode
    print "get: ",sanitize(line),"\n"
  end
  return line
end
原文链接:https://www.f2er.com/ruby/266436.html

猜你在找的Ruby相关文章