我可以替换特定文件夹中的文件名,我这样写了
FileInfo fsource = new FileInfo(Server.MapPath("~/PurchaseOrder/" + lblhideid.Text));
if (fsource.Exists)
{
string[] file = lblhideid.Text.Split('.');
string fName="Z-"+System.DateTime.Now.ToString("MM-dd-yyyy")+"-"+saveConsultantID+"."+file[1];
fsource.Name.Replace(lblhideid.Text, fName);
}
lblhideid.Text = image.jpeg,所以我可以像fName一样替换我自己的名字,如何替换名字请给我任何建议。
谢谢你 Hemanth
答案 0 :(得分:1)
我怀疑你想要最后一行:
fsource.MoveTo(Server.MapPath("~/PuchaseOrder/" + fName));
您当前的代码只是将文件名作为字符串获取并操纵该字符串。您想要操纵文件本身。
编辑:
您确定~/PurchaseOrder/
存在吗?
尝试:
string originalPath = Server.MapPath("~/PurchaseOrder/" + lblhideid.Text);
FileInfo fsource = new FileInfo(originalPath);
if (fsource.Exists)
{
string newName = string.Format("Z-{0:MM-dd-yyyy}-{1}.{2}",
System.DateTime.Now,
saveConsultantID,
fsource.Extension);
string newPath = Path.Combine(fsource.DirectoryName, newName);
fsource.MoveTo(newPath);
}
答案 1 :(得分:0)
试试这个,如果他们输入像file.tar.gz这样的文件名怎么办?
string extension = Path.GetExtension("~/PurchaseOrder/" + lblhideid.Text);
string newName = "MYFILE." + extension
File.Move(
"~/PurchaseOrder/" + lblhideid.Text,
"~/PurchaseOrder/" + newName );