2011-11-17 63 views
0

我可以在特定的文件夹替换文件名,我写了这样如何使用Asp.net替换文件名(特定的特定文件夹)?

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

回答

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);     
} 
+0

找不到路径的一部分路径。是错误请给我另一个建议 – hmk

+0

你确定〜/ PurchaseOrder /存在吗?残友通过代码一步查看哪一部分找不到路径? – Grhm

0

试试这个,如果他们把什么样的file.tar.gz文件名?

string extension = Path.GetExtension("~/PurchaseOrder/" + lblhideid.Text); 
string newName = "MYFILE." + extension 

File.Move(
    "~/PurchaseOrder/" + lblhideid.Text, 
    "~/PurchaseOrder/" + newName); 
+0

它不工作误差不sprecified – hmk

相关问题