加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

最有效的方法来检查Windows中的Java文件是否为空

发布时间:2020-12-13 21:13:33 所属栏目:Windows 来源:网络整理
导读:我试图检查一个日志文件是否为空(意味着没有错误),在Java中,在Windows上。到目前为止,我已经尝试使用2种方法。 方法1(失败) FileInputStream fis = new FileInputStream(new File(sLogFilename)); int iByteCount = fis.read(); if (iByteCount == -1) Sy
我试图检查一个日志文件是否为空(意味着没有错误),在Java中,在Windows上。到目前为止,我已经尝试使用2种方法。

方法1(失败)

FileInputStream fis = new FileInputStream(new File(sLogFilename));  
int iByteCount = fis.read();  
if (iByteCount == -1)  
    System.out.println("NO ERRORS!");
else
    System.out.println("SOME ERRORS!");

方法2(失败)

File logFile = new File(sLogFilename);
if(logFile.length() == 0)
    System.out.println("NO ERRORS!");
else
    System.out.println("SOME ERRORS!");

现在这两种方法在日志文件为空(没有内容)时失败,但文件大小不为零(2字节)。

检查文件是否为空的最有效和准确的方法是什么?我要求效率,因为我必须继续检查文件大小数千次。

注意:文件大小只能悬停在几个到10 KB之间!

方法3(失败)

遵循@ Cygnusx1的建议,我也尝试使用FileReader,没有成功。如果有人有兴趣,这是代码段。

Reader reader = new FileReader(sLogFilename);
int readSize = reader.read();
if (readSize == -1)
    System.out.println("NO ERRORS!");
else
    System.out.println("SOME ERRORS!");
检查文件的第一行是否为空:
BufferedReader br = new BufferedReader(new FileReader("path_to_some_file"));     
if (br.readLine() == null) {
    System.out.println("No errors,and file empty");
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读