/// <summary>
        /// 删除文件或目录
        /// </summary>
        /// <param name="filePath">文件或目录,可以为虚拟路径或绝对路径</param>
        /// <param name="isDir">是否目录</param>
        public static void DeletePath(string filePath, bool isDir)
        {
            if (filePath == null)
            {
                return;
            }
            if (string.IsNullOrEmpty(filePath.Trim()))
            {
                return;
            }
            string file = StringPlus.MapPath(filePath);

            if (isDir)
            {
                if (Directory.Exists(file))
                {
                    Directory.Delete(file, true);
                    return;
                }
            }
            else
            {
                if (File.Exists(file))
                {
                    File.Delete(file);
                }
            }
        }
示例#2
0
        /// <summary>
        /// 获取上传文件随机文件名,返回绝对路径地址
        /// </summary>
        /// <param name="saveVirtualDir"></param>
        /// <param name="extName">扩展名【请包含 . 】</param>
        /// <param name="virtualPathName">虚路径名(包括文件名称)【/upload/..../filename.ext】</param>
        /// <param name="fileName">文件名带扩展名</param>
        /// <returns></returns>
        public static string GetUploadRandFileName(string saveVirtualDir, string extName, out string virtualPathName, out string fileName)
        {
            fileName        = FileHelper.GetRandFileName() + extName;
            virtualPathName = saveVirtualDir + fileName;
            string dir = StringPlus.MapPath(virtualPathName);

            FileHelper.CreateDirectory(dir);
            return(dir);
        }
        /// <summary>
        /// 获取全路径中的文件名,如存在用“_”+数字改名,返回绝对路径, 路径中的目录不存在自动创建目录
        /// </summary>
        /// <param name="fileFullName">文件全路径</param>
        /// <returns></returns>
        public static string ChangeFileName(string fileFullName)
        {
            string tmpName  = StringPlus.MapPath(fileFullName);
            string filename = Path.GetFileNameWithoutExtension(tmpName);
            string ext      = Path.GetExtension(tmpName);
            string path     = tmpName.Substring(0, tmpName.LastIndexOf("\\"));

            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }

            int i = Directory.GetFiles(path, filename + "*", System.IO.SearchOption.TopDirectoryOnly).Length;

            while (File.Exists(tmpName))
            {
                i++;
                tmpName = path + "\\" + filename + "_" + (i + 1).ToString() + ext;
            }
            return(tmpName);
        }