And one alternate from me:
public static void InvertCase(ref string strText, out string strInverted)
{
char[] arrChars = strText.ToCharArray();
for (int i = 0; i < arrChars.Length; i++)
{
if (char.IsLower(arrChars[i]))
arrChars[i] = (char)((int)arrChars[i] - 32);
else if (char.IsUpper(arrChars[i]))
arrChars[i] = (char)((int)arrChars[i] + 32);
}
strInverted = new string(arrChars);
}
You can test the method:
string strText = "Kavin", strInverted;
InvertCase(ref strText, out strInverted);
Console.WriteLine("Original: " + strText);
Console.WriteLine("Inverted: " + strInverted);
Console.ReadKey();
The output is:
Original: Kavin
Inverted: kAVIN
:)