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, );
} /// <summary>
/// 转换为尺寸显示方式
/// </summary>
/// <param name="size">大小</param>
/// <param name="digits">小数位数</param>
/// <returns>尺寸显示方式</returns>
public static string ToSizeDescription(this double size, int digits)
{
var sizeDefine = ; while (sizeDefine < SizeDefinitions.Length && size > SizeLevel)
{
size /= 0x400;
sizeDefine++;
} if (sizeDefine == ) 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);
}
}

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

上一篇:【转】NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介


下一篇:python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列