【发布时间】:2018-02-20 19:03:22
【问题描述】:
所以,我想上传一个图像文件并将其保存到某个路径。它在第一次尝试时有效,但如果要第二次上传它,即使我关闭应用程序并再次运行它,它也会出错
The process cannot access the file '..mypath..' because it is being used by another process
我该如何解决这个问题?
这是我的代码
public ActionResult UploadImage(HttpPostedFileBase file, string text)
{
if (file != null && file.ContentLength > 0)
{
var fileName = datetime + "_" + Path.GetFileName(file.FileName);
log_file = fileName;
var path = Path.Combine(Server.MapPath("~/Images/"), fileName);
file.SaveAs(path); //error
Bitmap bmp = new Bitmap(path);
bmp = EmbedText(bmp, "Some Text");
var outputFileName = Path.Combine(Server.MapPath("~/StegoImages/"), fileName); ;
using (MemoryStream memory = new MemoryStream())
{
using (FileStream fs = new FileStream(outputFileName, FileMode.Create, FileAccess.ReadWrite))
{
bmp.Save(memory, ImageFormat.Png);
byte[] bytes = memory.ToArray();
fs.Write(bytes, 0, bytes.Length);
}
}
string coba = extractText(bmp);
}
else
{
TempData["flag_no_file"] = '1';
return RedirectToAction("UploadImage");
}
return View();
}
有人可以帮助我吗?可能是我上传图片的代码不对,怎么办呢?
我正在使用 C# asp .net mvc
对不起我的英语..
【问题讨论】:
-
您必须关闭文件。
-
是的,也是这个问题,如何关闭文件?
-
outputFileName..Close();
标签: c# asp.net asp.net-mvc