我正在尝试删除文件,但是该文件没有被删除,我的应用程序没有抛出任何错误。下面是我的代码:
final File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + '/' + "howmany.txt");
Uri uri = Uri.fromFile(file);
Boolean k = new File(uri.getPath()).delete();
if(k){
Toast.makeText(getApplicationContext(), "DELETED", Toast.LENGTH_SHORT).show();
}
我在检查权限后立即放置了这段代码,据我了解,如果操作完成,
.delete()
将返回true,因此,如果要执行此操作,则我想显示一个祝酒词,但从不显示祝酒词。最奇怪的是,我没有收到任何错误,但是却无法正常工作。 最佳答案
您无需创建文件对象的Uri,然后从该Uri创建文件对象。只需删除文件对象并从中获取布尔结果即可。您也不需要创建k
布尔值。您可以只测试删除本身:
final File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + '/' + "howmany.txt");
if (file.delete())
Toast.makeText(getApplicationContext(), "DELETED", Toast.LENGTH_SHORT).show();