使用IO流无法删除本地文件的原因
2016-04-13 14:25
288 查看
private void deleteLocalFile(final String filename){ String filePath = filename.substring(1);//根据自己的路径来赋值 File f = new File(filePath); if(f.exists()){ f.delete(); } }
以上代码正确,但是就是无法删除文件,原因是:
你的上一个IO流没有关闭,也就是没有调用close();
建议以后用到IO流的地方在try..catch后都加上finally,即防止了资源浪费也防止了影响下面代码的效果
public void test(final String fileName){ URLConnection urlConnection; InputStream is = null; try { URL url = new URL("XXXX" + fileName); urlConnection = url.openConnection(); is = urlConnection.getInputStream(); } catch (IOException e) { e.printStackTrace(); }finally{ try { is.close(); } catch (IOException e) { e.printStackTrace(); } } }
相关文章推荐
- php会话控制(session与cookie)
- 生命游戏
- python解析xml之lxml
- ambari-server启动报错 mysqladmin flush-hosts
- hadoop群集出现crontab job不执行的情况
- hadoop群集get文件的时候出现报错
- 简单的理解:先行发生原则
- 监控入门-Linux的平均负载(load average)
- 自定义导航栏继承自BaseNav
- 很久没有启动datanode服务的节点,重新启动,出现的Block更新情况
- ambari动态添加datanode和nodemanager
- Minicom 使用初步
- IOS 拍照,系统相册 拿照片地理位置,还有修改时间最新时间
- struts1进行单文件上传
- LeetCode *** 241. Different Ways to Add Parentheses
- 189. Rotate Array
- 算法训练 字符删除
- Why is try {…} finally {…} good; try {…} catch{} bad?
- mysql运维-二进制日志BINARY LOG清理
- php headers_sent的作用