DotNet指定文件显示的尺寸
DotNet指定文件显示的尺寸
彭泽0902 发表于11个月前
DotNet指定文件显示的尺寸
  • 发表于 11个月前
  • 阅读 0
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 十分钟定制你的第一个小程序>>>   

   在项目中开发中,有时候需要将文件的尺寸进行控制,例如需要将文件的尺寸指定为字节,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); } }

   以上只是文件尺寸进行一个算术运算,实现以上所述的功能。

共有 人打赏支持
粉丝 0
博文 44
码字总数 57771
×
彭泽0902
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: