字节(1024)到字符串转换(1 KB)?

时间:2010-06-04 14:55:45

标签: c# .net

我想知道.NET中是否有一个函数将数字字节转换为正确测量的字符串?

或者我们只需要按照旧方法划分并保留转换单元来完成它?

1 个答案:

答案 0 :(得分:7)

不,没有。

你可以这样写一个:

public static string ToSizeString(this double bytes) {
    var culture = CultureInfo.CurrentUICulture;
    const string format = "#,0.0";

    if (bytes < 1024)
        return bytes.ToString("#,0", culture);
    bytes /= 1024;
    if (bytes < 1024)
        return bytes.ToString(format, culture) + " KB";
    bytes /= 1024;
    if (bytes < 1024)
        return bytes.ToString(format, culture) + " MB";
    bytes /= 1024;
    if (bytes < 1024)
        return bytes.ToString(format, culture) + " GB";
    bytes /= 1024;
    return bytes.ToString(format, culture) + " TB";
}