KindEditor是一个不错的网页在线编辑器,可是它只提供了asp,php,jsp上传的类,没有提供Asp.net上传的类。 using System; using System.Globalization; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; public partial class Jscript_KindEditor_upload_cgi_upload : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //文件保存目录路径 string SavePath = "/Upload_Images/"; //文件保存目录URL string SaveUrl = "/Upload_Images/"; //上传图片类型 string[] ExtStr=new string[4]; ExtStr[0] = ".gif"; ExtStr[1] = ".jpg"; ExtStr[2] = ".png"; ExtStr[3] = ".bmp"; //图片的最大大小 int MaxSize = 100000; //错误提示 string[] MsgStr = new string[3]; MsgStr[0] = "上传文件大小超过限制."; MsgStr[1] = "上传文件扩展名是不允许的扩展名."; MsgStr[2] = "上传文件失败//n请重试."; string imgWidth = Request.Form["imgWidth"]; string imgHeight = Request.Form["imgHeight"]; string imgBorder = Request.Form["imgBorder"]; string imgTitle = Request.Form["imgTitle"]; string imgAlign = Request.Form["imgAlign"]; string imgHspace = Request.Form["imgHspace"]; string imgVspace = Request.Form["imgVspace"]; HttpPostedFile imgFile = HttpContext.Current.Request.Files["imgFile"]; //获得文件名 string FileName = System.IO.Path.GetFileName(imgFile.FileName); if (FileName != "") { if (imgFile.ContentLength > MaxSize) { Alert(MsgStr[0]); } else { string fileExtension = System.IO.Path.GetExtension(FileName).ToLower(); if (CheckExt(ExtStr, fileExtension)) { //重新为文件命名,时间毫秒部分+扩展名 string imgReName = "" + DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss-ffff", DateTimeFormatInfo.InvariantInfo) + "" + fileExtension; //文件夹名 string imgFolderName=DateTime.Now.ToString("yyyyMMdd",DateTimeFormatInfo.InvariantInfo); try { if (!System.IO.Directory.Exists(@Server.MapPath("" + SavePath + "" +imgFolderName + ""))) { //生成文件完整目录 System.IO.Directory.CreateDirectory(@Server.MapPath("" + SavePath + "" +imgFolderName + "")); } imgFile.SaveAs(@Server.MapPath("" + SavePath + "" + imgFolderName + "/")+imgReName); } catch { Alert(MsgStr[2]); } string imgUrl = SaveUrl + imgFolderName + "/" + imgReName; ReturnImg(imgUrl, imgWidth, imgHeight, imgBorder, imgTitle, imgAlign, imgHspace, imgVspace); } else { Alert(MsgStr[1]); } } } } /// <summary> /// 提示关闭层 /// </summary> /// <param name="MsgStr"></param> private void Alert(string MsgStr) { Response.Write("<html>"); Response.Write("<head>"); Response.Write("<title>error</title>"); Response.Write("<meta http-equiv=/"content-type/" content=/"text/html; charset=utf-8/">"); Response.Write("</head>"); Response.Write("<body>"); Response.Write("<mce:script type=/"text/javascript/"><!-- alert(/"" + MsgStr + "/");parent.KindDisableMenu();parent.KindReloadIframe(); // --></mce:script>"); Response.Write("</body>"); Response.Write("</html>"); } /// <summary> /// 检测文件类型 /// </summary> /// <param name="ExtStr"></param> /// <param name="fileExt"></param> /// <returns></returns> private bool CheckExt(string[] ExtStr,string fileExt) { for (int i = 0; i < ExtStr.Length; i++) { if (ExtStr[i] != fileExt) { return true; } } return false; } /// <summary> /// 返回图片 /// </summary> /// <param name="FileUrl"></param> /// <param name="FileWidth"></param> /// <param name="FileHeight"></param> /// <param name="FileBorder"></param> /// <param name="FileTitle"></param> /// <param name="FileAlign"></param> /// <param name="FileHspace"></param> /// <param name="FileVspace"></param> private void ReturnImg( string FileUrl,string FileWidth,string FileHeight,string FileBorder,string FileTitle,string FileAlign,string FileHspace,string FileVspace) { Response.Write("<html>"); Response.Write("<head>"); Response.Write("<title>上传成功</title>"); Response.Write("<meta http-equiv=/"content-type/" content=/"text/html; charset=utf-8/">"); Response.Write("</head>"); Response.Write("<body>"); Response.Write("<mce:script type=/"text/javascript/"><!-- parent.KindInsertImage(/"" + FileUrl +"/",/"" + FileWidth + "/",/"" + FileHeight + "/",/"" + FileBorder + "/",/"" + FileTitle + "/",/"" + FileAlign + "/",/"" + FileHspace + "/",/"" + FileVspace + "/"); // --></mce:script>"); Response.Write("</body>"); Response.Write("</html>"); } }