【发布时间】:2012-12-05 03:32:27
【问题描述】:
假设您收到了一个打开的 File 对象,但您不知道它是以什么类型的模式打开的(例如 'r'、'w'、'w+')。
您将如何确定文件以哪种模式打开?
据我所知,没有IO 方法可以解决这个问题,但我可能会遗漏一些东西。
如果需要为每种模式编写单独的测试,那么理想情况下,它应该是一个不会修改指针位置(或文件内容)的单一方法或一个衬垫 if 语句。
【问题讨论】:
-
我知道的唯一明显的是
IO#binmode?;除了@Arcturus 建议的异常测试之外,我对写入/读取一无所知。