我怎样才能防止系统.版本从删除前导零

本文关键字:版本 删除 系统 | 更新日期: 2023-09-27 18:06:25

var versionNo = new System.Version("2.01");

我得到的值是versionNo = 2.1,但我希望它是2.01

有什么建议吗?

我怎样才能防止系统.版本从删除前导零

这就是system.Version的工作原理-它将版本的组件存储为单独的整数,因此2.012.1之间没有区别。如果需要以这种方式显示,可以将其格式化为:

Version versionNo = new Version("2.01");
string s = string.Format("{0}.{1:00}",versionNo.Major, versionNo.Minor);

为了方便,您还可以创建一个扩展方法:

public static string MyFormat(this Version ver)
{
    return string.Format("{0}.{1:00}",ver.Major, ver.Minor);
}

这样,您仍然可以自定义显示,同时保留Version类的可比性

系统各组件。Version是int型,所以它不会填充0。您可以有major, minor和build:

Version versionNo = new Version("2.0.1");

结果是

Version = 2.0.1

,但一般来说,01和1是等价的。如果您想特别填充Version 0的任何组件,我建议您覆盖Version的ToString方法或创建扩展方法(如D Stanley所提到的),或者使用不同的类型。

如果你的版本是2.01,这意味着你的MinorVersion01

要输出该内容,必须将插入 MinorVersion,执行以下操作:

string version = version.Major.ToString() + version.Minor.ToString("D2");