How to find out next character alphabetically?

0 votes
asked Jun 22, 2009 by mac

How we can find out the next character of the entered one. For example, if I entered the character "b" then how do I get the answer "c"?

8 Answers

0 votes
answered Jan 3, 2009 by erikkallen

How does ä sort? In German (I think) it should sort after a, but in Swedish it should come after å, which in turn is after z. This is not a trivial question, unless you restrict yourself to English.

0 votes
answered Jan 22, 2009 by nakul-chaudhary

need to just add 1 in character you get next character. It works on ASCII values.

0 votes
answered Jun 22, 2009 by hemant

How about:

char first = 'c';
char nextChar = (char)((int) first + 1);
0 votes
answered Jun 22, 2009 by colin-pickard

Perhaps the simplest way is a little function and an array of the 26 chars. Then you can decide what you want to return for 'z'.

0 votes
answered Jun 22, 2009 by richard

Convert the character to a number, increment the number and then convert back.

But consider what will happen for "z" or "á" (Latin Small Leter A with Acute).

0 votes
answered Jun 22, 2009 by rogeriopvl

Try this:

char letter = 'c';

if (letter == 'z')
    nextChar = 'a';
else if (letter == 'Z')
    nextChar = 'A';

else
    nextChar = (char)(((int)letter) + 1);

This way you have no trouble when the char is the last of the alphabet.

0 votes
answered Jun 9, 2014 by joshl

Note that a char will implicitly cast to an int. Here's a simplified solution:

char incrementCharacter(char input)
{
    return (input == 'z'? 'a': (char)(input + 1));
}
0 votes
answered Jan 12, 2016 by moisey-oysgelt

This Change value useful fro Excel application to find previous column

public static string PrevExecelColumn( string s) { s = s.ToUpper(); char[] ac = s.ToCharArray(); int ln = ac.Length; for (int i = ln - 1; i > -1; i--) { char c = ac[i];

            if (c == 'A')
            {
                ac[i] = 'Z';
                continue;
            }

            ac[i] = (char)(((int)ac[i]) - 1);
            break;

        }
        s = new string(ac);
        return s;
    }  
Welcome to Q&A, where you can ask questions and receive answers from other members of the community.
Website Online Counter

...