1. 程式人生 > 實用技巧 >.net工具類——檔案操作

.net工具類——檔案操作

        #region 檔案操作

        /// <summary>
        /// 刪除單個檔案
        /// </summary>
        /// <param name="_filepath">檔案相對路徑</param>
        public static bool DeleteFile(string _filepath)
        {
            if (string.IsNullOrEmpty(_filepath))
            {
                return
false; } string fullpath = GetMapPath(_filepath); if (File.Exists(fullpath)) { File.Delete(fullpath); return true; } return false; } /// <summary> /// 刪除上傳的檔案(及縮圖)
/// </summary> /// <param name="_filepath"></param> public static void DeleteUpFile(string _filepath) { if (string.IsNullOrEmpty(_filepath)) { return; } string fullpath = GetMapPath(_filepath); //原圖 if
(File.Exists(fullpath)) { File.Delete(fullpath); } if (_filepath.LastIndexOf("/") >= 0) { string thumbnailpath = _filepath.Substring(0, _filepath.LastIndexOf("/")) + "mall_" + _filepath.Substring(_filepath.LastIndexOf("/") + 1); string fullTPATH = GetMapPath(thumbnailpath); //宿略圖 if (File.Exists(fullTPATH)) { File.Delete(fullTPATH); } } } /// <summary> /// 刪除指定資料夾 /// </summary> /// <param name="_dirpath">檔案相對路徑</param> public static bool DeleteDirectory(string _dirpath) { if (string.IsNullOrEmpty(_dirpath)) { return false; } string fullpath = GetMapPath(_dirpath); if (Directory.Exists(fullpath)) { Directory.Delete(fullpath, true); return true; } return false; } /// <summary> /// 刪除指定資料夾 /// </summary> /// <param name="_dirpath">物理路徑</param> public static bool DeleteDirectory_PhysicalPath(string _physicalpath) { if (string.IsNullOrEmpty(_physicalpath)) { return false; } if (Directory.Exists(_physicalpath)) { Directory.Delete(_physicalpath, true); return true; } return false; } /// <summary> /// 修改指定資料夾名稱 /// </summary> /// <param name="old_dirpath">舊相對路徑</param> /// <param name="new_dirpath">新相對路徑</param> /// <returns>bool</returns> public static bool MoveDirectory(string old_dirpath, string new_dirpath) { if (string.IsNullOrEmpty(old_dirpath)) { return false; } string fulloldpath = GetMapPath(old_dirpath); string fullnewpath = GetMapPath(new_dirpath); if (Directory.Exists(fulloldpath)) { Directory.Move(fulloldpath, fullnewpath); return true; } return false; } /// <summary> /// 返回檔案大小KB /// </summary> /// <param name="_filepath">檔案相對路徑</param> /// <returns>int</returns> public static int GetFileSize(string _filepath) { if (string.IsNullOrEmpty(_filepath)) { return 0; } string fullpath = GetMapPath(_filepath); if (File.Exists(fullpath)) { FileInfo fileInfo = new FileInfo(fullpath); return ((int)fileInfo.Length) / 1024; } return 0; } /// <summary> /// 返回副檔名,不含“.” /// </summary> /// <param name="_filepath">檔案全名稱</param> /// <returns>string</returns> public static string GetFileExt(string _filepath) { if (string.IsNullOrEmpty(_filepath)) { return ""; } if (_filepath.LastIndexOf(".") > 0) { return _filepath.Substring(_filepath.LastIndexOf(".") + 1); //副檔名,不含“.” } return ""; } /// <summary> /// 返回檔名,不含路徑 /// </summary> /// <param name="_filepath">檔案相對路徑</param> /// <returns>string</returns> public static string GetFileName(string _filepath) { return _filepath.Substring(_filepath.LastIndexOf(@"/") + 1); } /// <summary> /// 檔案是否存在 /// </summary> /// <param name="_filepath">檔案相對路徑</param> /// <returns>bool</returns> public static bool FileExists(string _filepath) { string fullpath = GetMapPath(_filepath); if (File.Exists(fullpath)) { return true; } return false; } public static string GetFile(string filepath) { string json = string.Empty; using (FileStream fs = new FileStream(filepath, FileMode.Open, System.IO.FileAccess.Read, FileShare.ReadWrite)) { using (StreamReader sr = new StreamReader(fs, Encoding.GetEncoding("gb2312"))) { json = sr.ReadToEnd().ToString(); } } return json; } ///// <summary> ///// 獲得遠端字串 ///// </summary> //public static string GetDomainStr(string key, string uriPath) //{ // string result = CacheHelper.GetCache(key) as string; // if (result == null) // { // System.Net.WebClient client = new System.Net.WebClient(); // try // { // client.Encoding = System.Text.Encoding.UTF8; // result = client.DownloadString(uriPath); // } // catch // { // result = "暫時無法連線!"; // } // CacheHelper.SetCache(key, result, 60); // } // return result; //} #endregion