ASP.NET修改FCKeditor中asp.net上传文件时的命名

FCKEditor上传文件默认是原文件名保存,按以下步骤修改,可以自定义文件命名规则:

一、为TypeConfig类添加属性TargetFileName。

二、修改FileWorkerBase类,在FileUpload方法的“sFileName = System.IO.Path.GetFileName( oFile.FileName );”这一行代码下面,添加下面代码:
 
1 if (!string.IsNullOrEmpty(this.Config.TypeConfig[resourceType].TargetFileName))
2 {
3   if (this.Config.TypeConfig[resourceType].TargetFileName == "guid")
4     sFileName = Guid.NewGuid().ToString() + System.IO.Path.GetExtension(oFile.FileName);
5   else if (this.Config.TypeConfig[resourceType].TargetFileName == "datetime")
6     sFileName = (new DateTime(9999, 12, 31, 23, 59, 59).Ticks - DateTime.Now.Ticks)
  .ToString()
+ System.IO.Path.GetExtension(oFile.FileName);
7 }

三、在调用时,修改editor/filemanager/connectors/aspx/config.ascx文件,添加下面代码:
 
1 TypeConfig["File"].TargetFileName = "datetime"; //datetime or guid
2 TypeConfig["Image"].TargetFileName = "datetime"; //datetime or guid
3 TypeConfig["Flash"].TargetFileName = "datetime"; //datetime or guid
4 TypeConfig["Media"].TargetFileName = "datetime"; //datetime or guid

如果省略步骤三,则默认还是原文件名保存

如果在步骤三中指定datetime,则以时间为规则命名;如果指定guid,则以GUID为文件名

posted @ 2011-05-26 15:30  技术勇者  阅读(550)  评论(0编辑  收藏  举报