Guy Guy - 3 months ago 20
C# Question

Best way to reverse a string

I've just had to write a string reverse function in C# 2.0 (i.e. LINQ not available) and came up with this:

public string Reverse(string text)
{
char[] cArray = text.ToCharArray();
string reverse = String.Empty;
for (int i = cArray.Length - 1; i > -1; i--)
{
reverse += cArray[i];
}
return reverse;
}


Personally I'm not crazy about the function and am convinced that there's a better way to do it. Is there?

Answer
public static string Reverse( string s )
{
    char[] charArray = s.ToCharArray();
    Array.Reverse( charArray );
    return new string( charArray );
}

I think the above works not tested, although the stringbuilder class may also have a reverse function I haven't checked that though.