开发者社区> 问答> 正文

FileInputStream in==null如何处理

已解决

java tutorial里看到

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class CopyBytes {
    public static void main(String[] args) throws IOException {

        FileInputStream in = null;
        FileOutputStream out = null;

        try {
            in = new FileInputStream("xanadu.txt");
            out = new FileOutputStream("outagain.txt");
            int c;

            while ((c = in.read()) != -1) {
                out.write(c);
            }
        } finally {
            if (in != null) {
                in.close();
            }
            if (out != null) {
                out.close();
            }
        }
    }
}

Q:为什么对in!=null做判断之后再激发in.close(),那么in==null的情况怎么处理?

展开
收起
kennyw 2018-09-08 18:42:41 3508 0
1 条回答
写回答
取消 提交回答
  • 自由散漫的开发者,哇哈哈
    采纳回答

    xanadu.txt读取异常或者其他系统异常引发in=null,此时in并没有获取输入流,因此不需要关闭

    2019-07-17 23:04:14
    赞同 1 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载