我有以下代码:
string str="A";
我想以编程方式获取下一个字母字符(如B,C,D,E等)
有人可以建议这样做吗?
答案 0 :(得分:10)
使用Char
。
char aChar = 'A';
aChar++; // After this line executes, `aChar` is `B`
答案 1 :(得分:3)
如果您正在寻找类似“A”的东西......“Z”......“AA”,“AB”......“ZZ”......“AAA”...... ,这是代码,
public static string IncrementString(this string input)
{
string rtn = "A";
if (!string.IsNullOrWhiteSpace(input))
{
bool prependNew = false;
var sb = new StringBuilder(input.ToUpper());
for (int i = (sb.Length - 1); i >= 0; i--)
{
if (i == sb.Length - 1)
{
var nextChar = Convert.ToUInt16(sb[i]) + 1;
if (nextChar > 90)
{
sb[i] = 'A';
if ((i - 1) >= 0)
{
sb[i - 1] = (char)(Convert.ToUInt16(sb[i - 1]) + 1);
}
else
{
prependNew = true;
}
}
else
{
sb[i] = (char)(nextChar);
break;
}
}
else
{
if (Convert.ToUInt16(sb[i]) > 90)
{
sb[i] = 'A';
if ((i - 1) >= 0)
{
sb[i - 1] = (char)(Convert.ToUInt16(sb[i - 1]) + 1);
}
else
{
prependNew = true;
}
}
else
{
break;
}
}
}
rtn = sb.ToString();
if (prependNew)
{
rtn = "A" + rtn;
}
}
return rtn.ToUpper();
}
答案 2 :(得分:2)
var str = "A";
char firstChar = str[0];
char nextChar = (char)((int)firstChar + 1);
var newStr = nextChar.ToString();
答案 3 :(得分:0)
我正在寻找相同的东西,我正在使用字符串,所以我需要投射它。
如果您的变量是字符串,则可以执行此操作:
string foo = "b";
char result = Convert.ToChar(foo[0] + 1); //Will result to 'c'