我的字符串看起来像“01”,“02”。是否有一种简单的方法可以将字符串更改为数字,添加1然后将其更改回字符串,以便这些字符串现在看起来像“02”,“03”等。我不是很擅长C#我刚刚开始,我之前没有得到过价值。
答案 0 :(得分:12)
要从字符串获取整数,您可以使用int.Parse()
:
int i = int.Parse("07");
要返回具有特定格式的字符串,您可以使用string.Format()
:
strings = string.Format("{0:00}",7);
如果我正确理解http://www.csharp-examples.net/string-format-int/,后者应该给出“07”。
答案 1 :(得分:0)
您可以使用Convert.ToInt32()将字符串转换为数字,添加1,并使用ToString()将其转换回来。
int number = Convert.ToInt32(originalString);
number += 1;
string newString = number.ToString();
答案 2 :(得分:0)
解析整数
int i = int.Parse("07");
添加到您的整数
i = i + 1;
创建一个新的字符串变量并将其分配给该整数的字符串值
string newstring = i.ToString();
答案 3 :(得分:0)
AddStringAndInt(string strNumber, int intNumber)
{
//TODO: Add error handling here
return string.Format("{0:00}", (int.TryParse(strNumber) + intNumber));
}
答案 4 :(得分:0)
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());
}
我需要添加1000位数的巨大数字。 C#中最大的数字类型是double,最多只能包含39位数字。这里是一个代码示例,用于添加非常大的数字,将它们视为字符串。