【发布时间】:2010-05-07 13:29:03
【问题描述】:
这个 FileInputStream.available() javadoc 说:
返回估计的数量 可以读取的剩余字节数(或 跳过)从此输入流 没有被下一个阻塞 为此输入调用方法 溪流。下一次调用可能是 同一个线程或另一个线程。一种 单次读取或跳过这么多字节 不会阻塞,但可以读取或跳过 更少的字节数。
在某些情况下,非阻塞读取(或 跳过)可能会出现被阻止时 只是很慢,例如当 读取大文件速度慢 网络。
我不确定是否在此检查中:
if (new FileInputStream(xmlFile).available() == 0)
我可以相信空文件总是返回零吗?
--
感谢@SB,他并没有完全回答这个问题,而是第一个给出了最佳选择:
如果 xmlFile 是 java.io.File 对象, 您可以使用 length() 方法获取 它的大小。
【问题讨论】: