您的位置:首页 > 移动开发 > Android开发

Android 删除再创建导致open failed: EBUSY (Device or resource busy)

2015-07-23 13:15 567 查看
链接出处:http://stackoverflow.com/questions/11539657/open-failed-ebusy-device-or-resource-busy

今天在处理android文件的时候遇到了这样一个问题:当删除一个文件后,无法再次创建相同名称的文件。通过捕获异常可以发现系统爆出了open failed: EBUSY (Device or resource busy)的异常,大致是改文件仍在操作中,无法进行其他操作的意思。StackOverFlow上说,是由于android系统的原因,导致删除的时候并没有释放文件锁,从而导致无法再次创建。

解决方案:先对要删除的文件进行重命名,然后再删除。这样删除过程中的文件锁就加在另一个文件上了,不会影响再次创建的过程。

final File to = new File(file.getAbsolutePath() + System.currentTimeMillis());
file.renameTo(to);
to.delete();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: