我同在ASCII表中的下一个字符返回它,例如:下一个字符的每个字符添加一个字符串
string tmp = "hello";
string modified = "ifmmp";
我试图分裂字符串转换成字符,和1每个字符,但它给出了一个错误。
我同在ASCII表中的下一个字符返回它,例如:下一个字符的每个字符添加一个字符串
string tmp = "hello";
string modified = "ifmmp";
我试图分裂字符串转换成字符,和1每个字符,但它给出了一个错误。
尝试了这一点:
public string NextCharString(string str)
{
string result = "";
foreach(var c in str)
{
if (c=='z') result += 'a';
else if (c == 'Z') result += 'A';
else result += (char)(((int)c) + 1)
}
}
编辑:我以为加一来所有的字符是循环的,即,添加一个“Z”会给出一个“A”
谢谢你的队友,这正是我正在寻找的 – arstek
似乎有某种字母推定你的包装中的语言写作系统。英文,也许。 –
'char'可以隐式转换为'int',所以你可以通过'c + 1'去除一个额外的演员。 – TheLethalCoder
试试这个:
string tmp = "hello";
string modified = "";
for (int i = 0; i < tmp.Length; i++)
{
char c = getNextChar(tmp[i]);
modified += c;
}
// 'modified' will be your desired output
创建此方法:
private static char getNextChar(char c)
{
// convert char to ascii
int ascii = (int)c;
// get the next ascii
int nextAscii = ascii + 1;
// convert ascii to char
char nextChar = (char)nextAscii;
return nextChar;
}
提到“ASCII”编码在这里有点误导。 'char'是一个UTF-16编码单元,它是Unicode字符集的几种编码之一。 –
ç你显示哪个错误你面临 – Usman
提示使用toCharArray()然后http://stackoverflow.com/questions/1026220/how-to-find-out-next-character-alphabetically然后concat –
当问一个问题,你应该显示我们你的代码,并准确地说明错误。因为我们绝对没办法告诉你什么是错误的,因为我们看不到你的代码。即使你告诉我们错误是什么,我们也许可以从中猜出你的代码是什么以及它出错的地方。虽然这个问题不是有用的答复(并且我们尽量不要根据请求为人们编写代码)。 – Chris