所以我有一些代码允许用户将某些Excel电子表格导入数据库。现在,我将文件的副本保存到服务器,以便我可以阅读:
fupMYfile.SaveAs(System.IO.Path.Combine(target, fupMYfile.FileName));
所以一切正常,直到我完成它时我尝试删除文件。我没有收到和错误,我检查了代码被调用,但是,它不会删除文件,也不会出错。
System.IO.File.Delete(target + fupMYfile.FileName);
我确实尝试确保IIS_IUSRS具有对该文件夹的完全访问权限,因此我知道这不是问题。
有人有什么想法吗?
感谢
答案 0 :(得分:7)
您没有使用相同的文件名。您保存的内容类似c:\somefolder\somefile.xls
,然后您尝试在c:\somefoldersomefile.xls
删除它。
使用Path.Compbine
将文件夹namd和文件名放在一起:
System.IO.File.Delete(System.IO.Path.Combine(target, fupMYfile.FileName));
答案 1 :(得分:0)
File.Delete
不会给出任何异常,因此不会抛出错误,我们需要提供完整的绝对路径
File.Delete("C:\temp\tmpFile.txt");
而不是
File.Delete("tmpFile.txt");