一、文件上传
//写上传文件的接口,通过FileStream流上传
[HttpPost]
public object UploadFile(IFormFile file)
{
string path = "E:\\NET\\" + file.FileName;
using (FileStream fs = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
file.CopyTo(fs);
}
return Ok();
}
//执行完此方法就会上传成功,不过此方法也有缺陷,只能上传30MB以下的文件
二、文件移动
// 两个参数
// 1、srcPath : 代表旧路径 (文件原始路径)
// 2、destPath : 代表新路径 (文件需要移动到的新的位置路径)
public static void CopyDirectory(string srcPath, string destPath)
{
try
{
DirectoryInfo dir = new DirectoryInfo(srcPath);
FileSystemInfo[] fileinfo = dir.GetFileSystemInfos(); //获取目录下(不包含子目录)的文件和子目录
foreach (FileSystemInfo i in fileinfo)
{
if (i is DirectoryInfo) //判断是否文件夹
{
if (!Directory.Exists(destPath + "\\" + i.Name))
{
Directory.CreateDirectory(destPath + "\\" + i.Name); //目标目录下不存在此文件夹即创建子文件夹
}
CopyDirectory(i.FullName, destPath + "\\" + i.Name); //递归调用复制子文件夹
}
else
{
File.Copy(i.FullName, destPath + "\\" + i.Name, true); //不是文件夹即复制文件,true表示可以覆盖同名文件
}
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
//方法执行完毕,文件也就移动成功了
三、文件删除
public static void RemoveFile(string path)
{
if (Directory.Exists(path)) //如果有这个文件夹了 则进行删除
{
GC.Collect();
GC.WaitForPendingFinalizers();
Directory.Delete(path, true);
}
}
方法执行完毕,文件也就删除没了