In C#, you can use the indexer operator [ ], to get a specified character in a string.
The indexer takes a zero-based integer as an index into the string. 0 returns the first character and n-1 (where n is the length of the string) returns the last character.
1
2
3
4
| string s = "ABCDE" ; char c = s[0]; // A c = s[2]; // C (3rd char) c = s[4]; // E |
Using a negative value for the index will result in an IndexOutOfRangeException being thrown.
Note that indexers work to extract Unicode characters only if they are 2-byte UTF16 characters. The indexer cannot retrieve a 4-byte surrogate pair.
1
2
3
4
5
| string s = "A€C" ; char c = s[1]; // Works: € s = "A𠈓C" ; c = s[1]; // Doesn't work: unprintable character |