当前位置: 代码迷 >> ASP.NET >> FCK上传代码的一点修改,该怎么处理
  详细解决方案

FCK上传代码的一点修改,该怎么处理

热度:5256   发布时间:2013-02-25 00:00:00.0
FCK上传代码的一点修改
修改FileUpload方法

C# code
while (true)            {                path = getDirectory(sServerDir);//修改                string directory = Path.Combine(sServerDir, path);                if (!Directory.Exists(directory))                {                    Directory.CreateDirectory(directory);                }                sFileName=new Random().Next().ToString() + "_" + sFileName;                string sFilePath = System.IO.Path.Combine(directory, sFileName);                if (System.IO.File.Exists(sFilePath))                {                    iCounter++;                    sFileName = System.IO.Path.GetFileNameWithoutExtension(oFile.FileName) + "_" + iCounter + "." + sExtension;                    iErrorNumber = 201;                }                else                {                    oFile.SaveAs(sFilePath);                    break;                }            } /// <summary>        /// 获取文件夹路径        /// </summary>        /// <param name="path">路径</param>        /// <returns></returns>        private string getDirectory(string path)        {            string directoryName = DateTime.Now.ToString("yyyyMMdd");//文件夹名称,每天一个            string filePath = Path.Combine(path, directoryName);            if (!Directory.Exists(filePath))            {                return Path.Combine(directoryName, getNumber(1));            }            return Path.Combine(directoryName, getPath(Directory.GetDirectories(filePath)));        }/// <summary>        /// 获取文件夹中的文个数件少于1000的文件夹名称        /// </summary>        /// <param name="info"></param>        /// <returns></returns>        private string getPath(string[] info)        {            DirectoryInfo directoryInfo = null;            string fileName = string.Empty;            if (info == null)            {                return null;            }            if (info.Length <= 0)            {                return getNumber(1);            }            for (int i = 0; i < info.Length; i++)            {                directoryInfo = new DirectoryInfo(info[i]);                if (directoryInfo.Exists)                {                    if (directoryInfo.GetFiles().Length < 1000)                    {                        fileName = info[i];                        break;                    }                }            }            if (string.IsNullOrEmpty(fileName))            {                return getNumber(int.Parse(info.ToList<string>().Max(s => s.Substring(s.LastIndexOf("\\") + 1).TrimStart('0'))) + 1);            }            else            {                return fileName.Substring(fileName.LastIndexOf("\\")+1);            }        } /// <summary>        /// 获取数字字符串,不足4位用0补足        /// </summary>        /// <param name="number">不大于9999的数字</param>        /// <returns></returns>        private string getNumber(int number)        {            if (number > 9999) return null;            return (10000 + number).ToString().Substring(1);        }


------解决方案--------------------------------------------------------
fck有一点觉得很不爽,你上传的图片可以在编辑器里删除吗??时间一久是不是有了很多垃圾!!
fuck~!
------解决方案--------------------------------------------------------
mark
  相关解决方案