欢迎光临

木子屋

标题: 修改CKFinder.NET实现文件上传重命名

作者: dnawo

日期: 2012-04-24 09:24 AM

分类: Web编程

内容: CKFinder.NET 2.2.1文件上传到服务器使用的是本地文件名，但在实际使用时我们希望文件能重命名保存到服务器，好在CKFinder.NET是开源的，要实现这一点并不复杂。
修改CKFinder.NET实现文件上传重命名
①.在vs打开_source文件夹中的项目，打开Settings/ConfigFile.cs，增加一个公有字段AutoRename，并赋值为false：
复制内容到剪贴板 程序代码public bool AutoRename;
public ConfigFile()
{
AutoRename = false;//默认不开启重命名
}
②.打开Connector/Config.cs，增加一个属性AutoRename：
复制内容到剪贴板 程序代码public bool AutoRename
{
get { return Settings.ConfigFile.Current.AutoRename; }
}
③.打开Connector/CommandHandlers/FileUploadCommandHandler.cs，在SendResponse方法增加如下代码(红色新增)：
复制内容到剪贴板 程序代码string sExtension = System.IO.Path.GetExtension( oFile.FileName );
sExtension = sExtension.TrimStart( '.' );
if ( !this.CurrentFolder.ResourceTypeInfo.CheckExtension( sExtension ) )
ConnectorException.Throw( Errors.InvalidExtension );
if ( Config.Current.CheckIsNonHtmlExtension( sExtension ) && !this.CheckNonHtmlFile( oFile ) )
ConnectorException.Throw( Errors.UploadedWrongHtmlFile );
if (Config.Current.AutoRename)
sFileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + "." + sExtension;
④.重新生成CKFinder.NET并在网站中引用CKFinder.dll；
⑤.修改CKFinder/config.ascx，在SetConfig方法中对AutoRename赋值为true，即可实现文件上传重命名：
复制内容到剪贴板 程序代码AutoRename = true;

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.178 ms

返回

标题: 修改CKFinder.NET实现文件上传重命名

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.178 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.211 ms

返回