我有一个长度为4的char数组。我正在尝试创建一种向此char数组添加1并生成字符串“0002”的方法。
我可以将char数组转换为整数,以便为它添加1,但问题是我在这个过程中丢失了前导零。有没有办法在添加中保留零?
我想要的输出的一些例子.. 如果endCode是“0009”并且我加1,我想要“0010” 如果endCode是“0999”并且我加1,我想要“1000”
我正在使用当前代码丢失零。
(Convert.ToInt32(New String(endCode)) + j).ToString
答案 0 :(得分:9)
你真是太近了。只有5个字符短。你只需要一个格式字符串:
(Convert.ToInt32(New String(endCode)) + j).ToString("D4")
虽然人们想知道这个数据为何或如何成为一个字符数组。
答案 1 :(得分:5)
有一种方法可以让零回复:
Dim s As String = "0001"
Dim i As Integer = 1
Console.WriteLine(CStr(CInt(s) + i).PadLeft(4, "0"c)) 'outputs 0002
答案 2 :(得分:1)
边缘情况怎么样?我认为D4不会起作用。
Dim encode As String = "9999"
Dim encint As Integer = Integer.Parse(encode) + 1
encode = encint.ToString("00000").Substring(1, 4)