繁体   English   中英

从Android设备删除内存中的文件?

[英]Delete file in internal memory from Android device?

我试图删除存储在内部存储器中的文件。 该文件确实被删除使用

activity.deleteFile(filename);

但只能在模拟器中。 在实际设备上,该方法始终返回false。 当我尝试从adb shell访问该文件时,会显示权限被拒绝。 所以,我猜有删除内存中文件的权限相关问题。

有人能告诉我如何从Android内部存储器中删除文件吗?

由于安全限制,您只能删除应用程序创建的文件。 您也无法删除属于您的应用程序包(apk)的文件,即/res/assets等中的文件。

如果你在谈论文件系统中的任何文件......这不起作用吗?

if (new File("fileUrl").delete()) {
  // Deleted
} else {
  // Not deleted
}

这里FileName是要删除的文件的名称,没有路径分隔符。这意味着FileName不应包含路径分隔符,如“/”。 文件应该由您的应用程序创建。 我的问题通过该代码解决了..

if(getApplicationContext().deleteFile(FileName)) { Toast.makeText(getApplicationContext(),"File Deleted",Toast.LENGTH_SHORT).show(); } else { Toast.makeText(getApplicationContext(),"Not Deleted",Toast.LENGTH_SHORT).show(); }

你应该使用:

_context.openFileOutput(fileName, Context.MODE_WORLD_READABLE);

在写文件时

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM