【发布时间】:2011-06-23 14:10:47
【问题描述】:
我有两个网络方法。第一个是:
void deleteFile(string filePath)
{
File.Delete(filePath);
}
另一个是:
string[] getAllFile()
{
// at the same folder....
Directory.GetFiles("*.xml");
.....
return ....
}
我这样调用这些方法:
deleteFile("1.xml")
getAllFile();
尽管删除了“1.xml”文件,对Directory.GetFiles("*.xml"); 的调用仍会在结果中返回“1.xml”。也就是说,它似乎没有被删除。
然后,当我循环结果时,尝试读取文件,得到 FileNoFoundException
【问题讨论】:
-
对不起,我的意思是,我已经删除了该文件,但是,它已被目录搜索。getfiles("*.xml");
-
@Scott:你的意思是你打算删除文件,但调用 getfiles 时它似乎没有被删除?
-
嗨@Scott,您可能希望编辑您的问题以使其更清晰。我是否说得对,即使您调用了 deleteFile("1.xml"),getAllFile() 仍然在找到“1.xml”?
-
我认为他的意思是在他调用 File.delete() 删除文件后该文件仍然显示。 File.delete() 方法并不能保证它会立即删除文件,所以它是有意义的。
-
@0A0D 谢谢!是的,当您调用 getfiles 时,它似乎没有被删除。
标签: c#