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

为什么java.io.File没有实现Autocloseable?

发布时间:2020-12-15 04:25:31 所属栏目:Java 来源:网络整理
导读:参见英文答案 Why java.io.File doesn’t have a close() method?????????????????????????????????????5个 升级到Java 7后,我得到Eclipse标记的以下代码: try (File file = new File(FILE_NAME)) { file.delete(); } 错误是: The resource type File does
参见英文答案 > Why java.io.File doesn’t have a close() method?????????????????????????????????????5个
升级到Java 7后,我得到Eclipse标记的以下代码:

try (File file = new File(FILE_NAME)) {
        file.delete();          
    }

错误是:

The resource type File does not implement java.lang.AutoCloseable

Java的文档中没有AutoCloseable文档中列出的文件:
http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html

所以除了添加catch块之外,建议的替代方案是什么?

解决方法

正如Jeffrey在对该问题的评论中所说,你需要区分File和InputStream,例如:的FileInputStream.
文件中没有任何内容可以关闭,但在流或阅读器中有一些东西要关闭.

try (FileInputStream fs = new FileInputStream (new File(FILE_NAME))) {
    // do what you want with the stream
}

(编辑:李大同)

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

    推荐文章
      热点阅读