程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> DotNet指定文件顯示的尺寸,dotnet指定尺寸

DotNet指定文件顯示的尺寸,dotnet指定尺寸

編輯:C#入門知識

DotNet指定文件顯示的尺寸,dotnet指定尺寸


   在項目中開發中,有時候需要將文件的尺寸進行控制,例如需要將文件的尺寸指定為字節,TB等。現在提供一個方法,實現將指定文件的尺寸,

   提供:"字節", "KB", "MB", "GB", "TB"等尺寸的控制選項,一下方法代碼可以在項目中直接使用,提高項目的開發效率。

 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
    public static class FsLibValueExtract
    {
        readonly static string[] SizeDefinitions = { "字節", "KB", "MB", "GB", "TB" };

        /// <summary>
        /// 控制尺寸顯示轉換上限
        /// </summary>
        readonly static double SizeLevel = 0x400 * 0.9;

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this double size)
        {
            return ToSizeDescription(size, 2);
        }

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <param name="digits">小數位數</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this double size, int digits)
        {
            var sizeDefine = 0;

            while (sizeDefine < SizeDefinitions.Length && size > SizeLevel)
            {
                size /= 0x400;
                sizeDefine++;
            }

            if (sizeDefine == 0) return size.ToString("#0") + " " + SizeDefinitions[sizeDefine];
            return size.ToString("#0." + string.Empty.PadLeft(digits, '#')) + " " + SizeDefinitions[sizeDefine];
        }

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this ulong size)
        {
            return ((double)size).ToSizeDescription();
        }

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <param name="digits">小數位數</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this ulong size, int digits)
        {
            return ((double)size).ToSizeDescription(digits);
        }

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this long size)
        {
            return ((double)size).ToSizeDescription();
        }

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <param name="digits">小數位數</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this long size, int digits)
        {
            return ((double)size).ToSizeDescription(digits);
        }

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this int size)
        {
            return ((double)size).ToSizeDescription();
        }

        /// <summary>
        /// 轉換為尺寸顯示方式
        /// </summary>
        /// <param name="size">大小</param>
        /// <param name="digits">小數位數</param>
        /// <returns>尺寸顯示方式</returns>
        public static string ToSizeDescription(this int size, int digits)
        {
            return ((double)size).ToSizeDescription(digits);
        }
    }

   以上只是文件尺寸進行一個算術運算,實現以上所述的功能。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved