You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET MAUI Android平台File.Delete无法删除文件求助

.NET MAUI Android平台下File.Delete无法删除AppDataDirectory文件的问题及解决办法

问题场景

开发Android平台的.NET MAUI(.NET 8)应用时,尝试删除FileSystem.AppDataDirectory目录下的文件,使用File.Delete()方法无法成功删除,且没有抛出任何异常。虽然该目录不需要额外写入权限,仍已添加必要权限,且Windows平台下相同代码可正常删除文件。

原代码如下:

string filePath = Path.Combine(FileSystem.AppDataDirectory, "test.jpg");

if (File.Exists(filePath))
{
    Debug.WriteLine("File Exist!");

    try
    {                
       File.Delete(filePath);           
    }
    catch (Exception ex) {
       Debug.WriteLine("Exception!");       
    }   
}
else
{
    Debug.WriteLine("File not exists!");
}

if(File.Exists(filePath))
{
   Debug.WriteLine("File not deleted!");
}        

// Output: 
// File Exist!
// File not deleted!

问题定位

经排查,确定这是.NET MAUI(.NET 8)在Android平台上的兼容性问题。

解决方案

改用FileInfo类的Delete()方法即可正常删除文件,代码如下:

var file = new FileInfo(filePath);
file.Delete();

内容的提问来源于stack exchange,提问作者modab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 02:53:10