Inputstream 文件流未关闭导致的异常

使用InputStream文件流之后一定要关闭它,否则在使用某些操作的时候会发生异常。

比如说如下代码:

File file = new File(“C://test.txt");

InputStream is = new FileInputStream(file);

file.delete();

上面的代码没有关闭文件流,虽然执行了file.delete();这句话,但是并没有删掉文件。

File file = new File(“C://test.txt");

InputStream is = new FileInputStream(file);

is.close();

file.delete();

上面这段代码加上了is.close();这样就可以删除文件了,如果不关闭文件流,则该文件被占用,就无法删除。

Java InputStream调用close方法进行资源关闭造成直接内存泄漏 今天做一个测试,测试InputStream关闭资源是否会造成内存泄漏 一 测试程序准备 关闭InputStream的Java程序【UrlStreamNoClose.java】: import java.io.IOException; import java.io.InputStream; import java.net.URL; import java.nio.file.Files; import java.nio.file.Paths; public class UrlStreamNoClose. 阅读详情

相关推荐

为什么流不关闭导致内存泄漏

或其他网络连接相关的对象:如果你没有关闭 Socket 或其他网络连接相关的对象,它们可能会保持与远程主机的连接状态,这会导致网络资源无法释放,这些对象将无法被垃圾回收器回收,同样也可能导致端口号占用导致其他线程无法使用该端口的情况。,我们查看它的close方法,可以看到是空实现的,原因很简单,它们操作数据流时是在内存中操作字节的,并不会持有操作系统文件资源,当然了,为了统一开发习惯,我们还是建议读者操作流时,调用一下close。对象,它会一直持有底层文件的句柄,这可能会导致文件资源无法释放。

禅与计算机程序设计的艺术 3141

【Java基础】I/O流 —— Java中的流都需要关闭吗?

在Java中,指向内存的流和指向外部资源的流都可以通过类库中的IO相关类进行实现。那么所有的流都需要关闭吗?

欢迎。 1万+

浅谈Java中Stream关闭

InputStream

抽象的螺旋 1万+

java 文件流关闭 finally_Java如何正确的使用try catch finally关闭文件流的总结

上学的时候,也许老师告诉你用完文件流记得要关闭,可能为了省事,他也没仔细的给你示范如何关闭,实际开发中,要是不能正确关闭流,服务器分分钟炸掉,那是很正常的。一般都是新人才会有这个问题。当然都是从新人走过来的嘛。下面是大师兄总结的关闭文件流的基本动作,有不合适的,还请指出来。流在try外面声明,在try里面初始化,然后在finally里面给close,还记得处理异常efinally里面close的时...

weixin_39785600的博客 1102

java finally关闭文件流_Java如何正确的使用try catch finally关闭文件流的总结

上学的时候,也许老师告诉你用完文件流记得要关闭,可能为了省事,他也没仔细的给你示范如何关闭,实际开发中,要是不能正确关闭流,服务器分分钟炸掉,那是很正常的。一般都是新人才会有这个问题。当然都是从新人走过来的嘛。下面是大师兄总结的关闭文件流的基本动作,有不合适的,还请指出来。流在try外面声明,在try里面初始化,然后在finally里面给close,还记得处理异常efinally里面close的时...

weixin_39646628的博客 1208

java finally 关闭流_Java如何正确的使用try catch finally关闭文件流的总结

上学的时候,也许老师告诉你用完文件流记得要关闭,可能为了省事,他也没仔细的给你示范如何关闭,实际开发中,要是不能正确关闭流,服务器分分钟炸掉,那是很正常的。一般都是新人才会有这个问题。当然都是从新人走过来的嘛。下面是大师兄总结的关闭文件流的基本动作,有不合适的,还请指出来。流在try外面声明,在try里面初始化,然后在finally里面给close,还记得处理异常efinally里面close的时...

weixin_42469243的博客 3868

Java如何正确的使用try catch finally关闭文件流的总结

上学的时候,也许老师告诉你用完文件流记得要关闭,可能为了省事,他也没仔细的给你示范如何关闭,实际开发中,要是不能正确关闭流,服务器分分钟炸掉,那是很正常的。一般都是新人才会有这个问题。当然都是从新人走过来的嘛。下面是大师兄总结的关闭文件流的基本动作,有不合适的,还请指出来。流在try外面声明,在try里面初始化,然后在finally里面给close,还记得处理异常efinally里面close的时...

请叫我大师兄 4万+

关闭InputStream导致Tomcat意外死掉,重启后java.io.EOFException异常

{ "contentType", "application/octet-stream", "inputName", "inputStream", "contentDisposition", "attachment;filename=\"${fileName}\"",

u011054048的专栏 380

关闭InputStream 引起的血案

下面的方法是从aws s3 读取文件对象下载到本地 public int downloadFile(HttpServletResponse httpResponse, String storePath, long p, long pend, int len, long realLen) throws IOException { String key = getKeyByStorePath...

weixin_33739646的博客 936

InputStream

在 Java 的 I/O 流体系中,InputStream 类位于 java.io 包下,是所有字节输入流的超类。调用任何read()方法后,读到的数据会从stream中流出,不再保存在stream中。

1214

java怎么关闭inputstream_关于java:为什么声明InputStream.close()会抛出IOException

声明java.io.InputStream.close()方法抛出IOException。 在什么情况下会抛出这样的例外?编辑:是的我已经阅读了javadoc。 任何人都可以比"发生I / O错误时"更具体吗? 关闭InputStream时会发生什么I / O错误?如果发生I / O错误。也许如果它已经关闭?@meriton我想你会在IOException类中找到你的答案"I / O错误可能发生什...

weixin_30460749的博客 1837

transferto的流这么关闭_InputStream关闭处理

问题的引入InputStream inputStream = new FileInputStream(path);InputStreamReader inputStreamReader= new InputStreamReader(inputStream , "utf-8");BufferedReader bufferedReader= new BufferedReader(inputStream...

weixin_42220853的博客 1664

由于提前关闭Scanner对象引起的NoSuchElementException异常

最近实验过程中遇到了NoSuchElementException异常,查询各种资料并经过实践发现是由于提前关闭Scanner引起的异常。 考虑如下代码: import java.util.Scanner; public class TestScanner { public static void test() { Scanner b = new Scanner(System.in); System.out.println("test:"); int

weixin_43719606的博客 424
上一篇: 获得主机域名及其IP和Port端口
下一篇: 【经典之作】做网页时经常用到的代码集合(3)
android_mylove
博客等级 码龄14年 1粉丝 276原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值