截断版本号 C#
Truncating a version number C#
如果我的版本号有 5 位数字,例如“1.0.420.50.0”,我如何才能将该数字(以及其他版本号,例如“1.0.512.500.0”)截断为只有 4 位数字? “1.0.420.50.0”-->“1.0.420.50”
我更愿意使用数组,但任何其他方法也可以!
感谢您提前提出任何建议!
如果它是一个字符串,你可以这样做
ver = "1.2.3.4.5";
ver = ver.substring(0, ver.lastindexof(".");
这应该会一直显示到最后一个“.”。如果您的版本号变长或变短,这不是很可靠,但它适用于 5 位版本号。如果你有一个字符串,这也是你想要的基本想法。
获取最后一期的索引,然后获取从索引0到最后一期的索引的子字符串。例如:
string version = "1.0.420.50.0";
int lastPeriodIndex = version.LastIndexOf('.');
string reformattedVersion = version.Substring(0, lastPeriodIndex);
通过使用数组,如果这是您真正想要的:
string version = "1.0.420.50";
var numbers = version.Split(new char[]{'.'}, StringSplitOptions.RemoveEmptyEntries);
string reformattedVersion = numbers[0] + '.' + numbers[1] + '.' + numbers[2] + '.' + numbers[3];
但这elegant/quick解决方案要少得多。
我有一段时间没有用 C# 编程了,所以语法可能不对。如果版本控制可以超过六位数字,您将不需要依赖于删除最后一位数字的方法。取而代之的是只取前四个版本号。
String version = "1.0.420.50.0";
String [] versionArray = version.Split(".");
var newVersion = string.Join(".", versionArray.Take(4));
如果我的版本号有 5 位数字,例如“1.0.420.50.0”,我如何才能将该数字(以及其他版本号,例如“1.0.512.500.0”)截断为只有 4 位数字? “1.0.420.50.0”-->“1.0.420.50”
我更愿意使用数组,但任何其他方法也可以! 感谢您提前提出任何建议!
如果它是一个字符串,你可以这样做
ver = "1.2.3.4.5";
ver = ver.substring(0, ver.lastindexof(".");
这应该会一直显示到最后一个“.”。如果您的版本号变长或变短,这不是很可靠,但它适用于 5 位版本号。如果你有一个字符串,这也是你想要的基本想法。
获取最后一期的索引,然后获取从索引0到最后一期的索引的子字符串。例如:
string version = "1.0.420.50.0";
int lastPeriodIndex = version.LastIndexOf('.');
string reformattedVersion = version.Substring(0, lastPeriodIndex);
通过使用数组,如果这是您真正想要的:
string version = "1.0.420.50";
var numbers = version.Split(new char[]{'.'}, StringSplitOptions.RemoveEmptyEntries);
string reformattedVersion = numbers[0] + '.' + numbers[1] + '.' + numbers[2] + '.' + numbers[3];
但这elegant/quick解决方案要少得多。
我有一段时间没有用 C# 编程了,所以语法可能不对。如果版本控制可以超过六位数字,您将不需要依赖于删除最后一位数字的方法。取而代之的是只取前四个版本号。
String version = "1.0.420.50.0";
String [] versionArray = version.Split(".");
var newVersion = string.Join(".", versionArray.Take(4));