关于文件删除,犯了很二的错误
来源:互联网 发布:录制gif的软件 编辑:程序博客网 时间:2024/04/29 12:56
根据指定Uri删除音频文件。
写了个方法:
private void DelFileByUri(Uri uri){String[] proj = { MediaStore.Audio.Media.DATA };Cursor actualAudioCursor = managedQuery(uri,proj,null,null,null);int actual_audio_column_index = actualAudioCursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA);actualAudioCursor.moveToFirst();String audio_path = actualAudioCursor.getString(actual_audio_column_index);Log.e("harlan", "audio_path:"+audio_path);File file = new File(audio_path);file.delete();Log.e("harlan", "DelFileByUri File.exists():"+file.exists());Log.e("harlan", "DelFileByUri File.delete():"+file.delete());}
最后2行log一直显示false。
我还犯二,以为文件路径问题。
恍然大悟才知道,此时file已被删除,调用exists和再次删除,当然出错。
正确的如下:
private void DelFileByUri(Uri uri){String[] proj = { MediaStore.Audio.Media.DATA };Cursor actualAudioCursor = managedQuery(uri,proj,null,null,null);int actual_audio_column_index = actualAudioCursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA);actualAudioCursor.moveToFirst();String audio_path = actualAudioCursor.getString(actual_audio_column_index);Log.e("harlan", "audio_path:"+audio_path);File file = new File(audio_path);Log.e("harlan", "DelFileByUri File.exists():"+file.exists());boolean ifDeled = file.delete();Log.e("harlan", "DelFileByUri File ifDeled:"+ifDeled);}
- 关于文件删除,犯了很二的错误
- 犯两个很二的错误关于webservice
- 犯了一个很搞笑的错误
- 又犯了不该犯的错误
- 刚刚犯了个错误,关于div定位的。
- 删除图片-又犯二了
- 犯了死锁的错误
- 今天犯了一个很低级的错误 关于函数重载
- 犯了一个菜鸟必备的很郁闷的错误:for循环删除LinkedList集合中元素
- 我犯了个很SB的错误!
- 犯了一个Hibernate的低级错误
- 一个犯了N久的错误
- 犯了一个简单的错误
- 犯了一个Hibernate的低级错误
- 犯了一个Hibernate的低级错误
- 犯了一个严重的错误
- 今天犯了个愚蠢的错误
- 犯了一个极傻的错误
- Openstack G版Cinder源码分析
- 关于 java正则表达式
- Andriod电子书打包(APK)后,签名冲突的解决办法
- 使用UDEV绑定磁盘FOR ASM
- 嵌入式开发学习路线图
- 关于文件删除,犯了很二的错误
- Hangman游戏,请大家指点
- vi 命令 用法
- 翻转句子中单词的顺序(10)
- 大数相乘 +方法2(C语言)
- 【学习笔记】读《领导力》第四版 笔记一
- linux 线程的绑定 PTHREAD_SCOPE_SYSTEM(绑定的)和PTHREAD_SCOPE_PROCESS(非绑定的)
- Hibernate程序性能优化的考虑要点
- C/C++中求字符串数组的大小---sizeof,strlen,string,length()