C# - increment number and keep zeros in front
Use the integer and format or pad the result when you convert to a string. Such as
int i = 1;
string s = i.ToString().PadLeft(40, '0');
See Jeppe Stig Nielson's answer for a formatting option that I can also never remember.
Try using
int myNumber = ...;
string output = myNumber.ToString("D40");
Of course, the int
can never grow so huge as to fill out all those digit places (the greatest int
having only 10 digits).
Just convert your string to int, perform the addition or any other operations, then convert back to string with adequate number of leading 0's:
// 39 zero's + "1"
string initValue = new String('0', 39) + "1";
// convert to int and add 1
int newValue = Int32.Parse(initValue) + 1;
// convert back to string with leading zero's
string newValueString = newValue.ToString().PadLeft(40, '0');