我正在尝试上传一个excel文件,我想用文件名附加Guid.
我正在使用C#MVC
public ActionResult ValidateUploadedFile()
{
DataExchangeDefinitionViewModel dataExchangeDefinitionVM = new DataExchangeDefinitionViewModel();
DataExchangeDefinition dataExchangeDefinitionObj = new DataExchangeDefinition();
// Get all files from Request object
HttpFileCollectionBase files = Request.Files;
HttpPostedFileBase file = files[0];
try
{
if (Request.Files.Count > 0)
{
string fname;
// Checking for Internet Explorer
if (Request.Browser.Browser.ToUpper() == "IE" || Request.Browser.Browser.ToUpper() == "INTERNETEXPLORER")
{
string[] testfiles = file.FileName.Split(new char[] { '\\' });
fname = testfiles[testfiles.Length - 1];
}
else
{
Guid guidObj = Guid.NewGuid();
fname = file.FileName + guidObj.ToString();
}
fname = Path.Combine(Server.MapPath("~/images/Uploads/ImportExcel"), fname);
if (_dataExchangeBusiness.IsExcelFile(fname)==true)
{
file.SaveAs(fname);
return Json(new { Result = "true", Message = "" });
}
else
{
return Json(new { Result = "false", Message = "" });
}
}
}
catch (Exception ex)
{
throw ex;
}
// return Json(new { Result = "OK" ,Message="File validated succesfully"});
return null;
}
Run Code Online (Sandbox Code Playgroud)
实际上文件已正确上传.我想用文件名附加Guid.当我使用文件名附加Guid时,它会在文件扩展名后附加.
像这样OtherExpense_01.01.2011_E20.xlsx7ac9dbdb-67bb-434c-8465-6a1f7e5bfc83 我期待这样的结果OtherExpense_01.01.2011_E20_7ac9dbdb-67bb-434c-8465-6a1f7e5bfc83.xlsx
您可以使用Path.GetFileNameWithoutExtension()和Path.GetExtension()方法将文件名与GUID连接(请注意,它们都需要System.IO命名空间):
Guid guidObj = Guid.NewGuid();
string baseName = Path.GetFileNameWithoutExtension(file.FileName);
string extension = Path.GetExtension(file.FileName);
fname = baseName + guidObj.ToString() + extension;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
52 次 |
| 最近记录: |