在进行程序设计的时候,有一个功能是作图后保存,然后调用显示。但是我在第二次使用的时候常会直接显示上一次保存的图片,后来我发现手动删除上次保存的图,就可以正确显示,所以用到了C#删除文件这个功能,这样每次保存图片之前先把之前的图片删除就可以了。
功能实现:
//删除文件的函数
public static void DelectDir(string srcPath)
{
try
{
DirectoryInfo dir = new DirectoryInfo(srcPath);
FileSystemInfo[] fileinfo = dir.GetFileSystemInfos(); //返回目录中所有文件和子目录
foreach (FileSystemInfo i in fileinfo)
{
if (i is DirectoryInfo) //判断是否文件夹
{
DirectoryInfo subdir = new DirectoryInfo(i.FullName);
subdir.Delete(true); //删除子目录和文件
}
else
{
File.Delete(i.FullName); //删除指定文件
}
}
}
catch (Exception e)
{
throw;
}
}
由于我知道自己需要删除的是文件,就可以简化为:
public static void DelectDir(string srcPath)
{
try
{
DirectoryInfo dir = new DirectoryInfo(srcPath);
FileSystemInfo[] fileinfo = dir.GetFileSystemInfos(); //返回目录中所有文件和子目录
foreach (FileSystemInfo i in fileinfo)
{
File.Delete(i.FullName); //删除指定文件
}
}
catch
{
throw;
}
}
然后在保存图片的功能前进行调用:
//如果文件存在,删除文件
if (Directory.Exists("a.gif"))
{
DelectDir("a.gif");
}