C# 向字符串中添加数字?

C# 向字符串中添加数字?,c#,C#,我的字符串看起来像“01”,“02”。有没有一种简单的方法可以把字符串变成一个数字,加上1,然后把它变回一个字符串,这样这些字符串现在看起来像“02”,“03”等等。我不太擅长C#,因为我刚刚开始,以前不需要得到值 要将字符串转换为整数,可以使用int.Parse(): 要返回具有特定格式的字符串,可以使用string.format(): 如果我理解正确,后者应该给出“07”。您可以使用convert.ToInt32()将字符串转换为数字,添加1,然后使用ToString()将其转换回来 int

我的字符串看起来像“01”,“02”。有没有一种简单的方法可以把字符串变成一个数字,加上1,然后把它变回一个字符串,这样这些字符串现在看起来像“02”,“03”等等。我不太擅长C#,因为我刚刚开始,以前不需要得到值

要将字符串转换为整数,可以使用
int.Parse()

要返回具有特定格式的字符串,可以使用
string.format()


如果我理解正确,后者应该给出“07”。

您可以使用convert.ToInt32()将字符串转换为数字,添加1,然后使用ToString()将其转换回来

int number = Convert.ToInt32(originalString);
number += 1;
string newString = number.ToString();
解析整数

int i = int.Parse("07");
添加到整数

i = i + 1;
创建一个新的字符串变量,并将其分配给该整数的字符串值

string newstring = i.ToString();
静态字符串StringsADD(字符串s1、字符串s2)
{
int l1=s1.Count();
int l2=s2.Count();
int[]l3={l1,l2};
int minlength=l3.Min();
int maxlength=l3.Max();
国际小松=0;
StringBuilder sb=新的StringBuilder();
对于(int i=0;i=10)
{
某人追加(总和-10);
小松=1;
}
其他的
{
某人追加(总数);
小松=0;
}
如果(i==maxlength-1&&komsu==1)
{
某人附加(“1”);
}
}
返回新字符串(sb.ToString().Reverse().ToArray());
}

我需要添加1000位的大数字。C#中最大的数字类型为双精度,最多只能包含39位数字。这里是一个代码示例,用于添加非常大的数字,并将其视为字符串。

您所有的数字前面都有0,还是这只是一个示例?+1这是正确的。格式字符串的“00”部分表示您需要2个或更多数字,如果需要,请用0左键填充以确保2个数字。+1这一点需要注意的是使用TryParse而不是直接解析。实际上,如果您只将一个数字转换为字符串,调用ToString实例方法的效率稍高一些。@phoog
ToString
将其格式化为
7
而不是请求的
07
。@Anders Abel:不是这样。有一个重载接受字符串参数(即7.ToString(“00”)将返回“07”)。与调用string.Format相比,它需要更少的键入和更少的指令。抱歉,错过了格式部分:P读取太快!请参阅下面的响应:)此函数以其当前形式是垃圾,
TryParse
获取一个
out
参数,该参数保存解析后的值。TryParse的返回值(一个布尔值)将是string.Format中插入的值。
i = i + 1;
string newstring = i.ToString();
AddStringAndInt(string strNumber, int intNumber)  
{
    //TODO: Add error handling here
    return string.Format("{0:00}", (int.TryParse(strNumber) + intNumber));
}
static string StringsADD(string s1, string s2)
{
    int l1 = s1.Count();
    int l2 = s2.Count();

    int[] l3 = { l1, l2 };
    int minlength = l3.Min();
    int maxlength = l3.Max();
    int komsu = 0;
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < maxlength; i++)
    {

        Int32 e1 = Convert.ToInt32(s1.PadLeft(maxlength, '0').ElementAt(maxlength - 1 - i).ToString());
        Int32 e2 = Convert.ToInt32(s2.PadLeft(maxlength, '0').ElementAt(maxlength - 1 - i).ToString());
        Int32 sum = e1 + e2 + komsu;
        if (sum >= 10)
        {
            sb.Append(sum - 10);
            komsu = 1;
        }
        else
        {
            sb.Append(sum);
            komsu = 0;
        }
        if (i == maxlength - 1 && komsu == 1)
        {
            sb.Append("1");
        }

    }

    return new string(sb.ToString().Reverse().ToArray());
}