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为文件名