2

我有一个长度为 4 的 char 数组。我正在尝试创建一种将 1 添加到此 char 数组并生成字符串“0002”的方法。

我可以将 char 数组转换为整数以便将 1 添加到其中,但问题是我在此过程中丢失了前导零。有没有办法在加法中保留零?

我想要的一些输出示例.. 如果 endCode 是“0009”并且我添加 1,我想要“0010”如果 endCode 是“0999”并且我添加 1,我想要“1000”

我正在用我当前的代码丢失零..

(Convert.ToInt32(New String(endCode)) + j).ToString
4

3 回答 3

9

你是如此接近。仅短 5 个字符。你只需要一个格式字符串:

(Convert.ToInt32(New String(endCode)) + j).ToString("D4")

尽管人们想知道为什么或如何首先将这些数据变成字符数组。

于 2013-10-09T15:03:51.647 回答
5

有一种方法可以恢复零:

Dim s As String = "0001"
Dim i As Integer = 1
Console.WriteLine(CStr(CInt(s) + i).PadLeft(4, "0"c)) 'outputs 0002
于 2013-10-09T15:03:06.007 回答
1

边缘情况呢?我不认为 D4 会为此工作。

    Dim encode As String = "9999"
    Dim encint As Integer = Integer.Parse(encode) + 1
    encode = encint.ToString("00000").Substring(1, 4)
于 2013-10-09T15:25:04.067 回答