Wil*_*lem 3 .net c# string split
我试图拆分我当前的应用程序版本号,但删除前导零.
如何更改分割以不删除前导零.
得到currentVersionNo:
startUpAssembly.GetName().Version.ToString()
Run Code Online (Sandbox Code Playgroud)
所以测试:
string versionNo = "7.01.7000.0";
string[] versionInfo = versionNo.Split('.');
Run Code Online (Sandbox Code Playgroud)
这会产生:
7
1 //Here i need it to be 01
7000
0
Run Code Online (Sandbox Code Playgroud)
我需要它不要删除前导零.我如何实现这一目标?
也许使用正则表达式有更好的解决方案?
Jon*_*eet 20
A System.Version不是任意字符串 - 它是四个整数.前导零是无关紧要的,因此在转换回字符串时不包括在内.这就是你丢失信息的地方 - 而不是String.Split.你可以很容易地看到这个:
using System;
class Test
{
static void Main()
{
Version version = new Version("7.01.7000.0");
Console.WriteLine(version); // 7.1.7000.0
}
}
Run Code Online (Sandbox Code Playgroud)
基本上,您的计划存在根本缺陷,您应该更改您的设计.你不应该试图代表一个版本的"7.01.7000.0"开始.
另外,你应该退后一步,考虑一下你的诊断程序:是什么让你觉得应该String.Split责怪这里?你为什么不是第一步看结果startUpAssembly.GetName().Version.ToString()?