What's the equivalent of VB's Asc() and Chr() functions in C#?


Question

VB has a couple of native functions for converting a char to an ASCII value and vice versa - Asc() and Chr().

Now I need to get the equivalent functionality in C#. What's the best way?

1
28
4/6/2009 12:26:51 PM

Accepted Answer

You could always add a reference to Microsoft.VisualBasic and then use the exact same methods: Strings.Chr and Strings.Asc.

That's the easiest way to get the exact same functionality.

28
4/6/2009 12:37:59 PM

For Asc() you can cast the char to an int like this:

int i = (int)your_char;

and for Chr() you can cast back to a char from an int like this:

char c = (char)your_int;

Here is a small program that demonstrates the entire thing:

using System;

class Program
{
    static void Main()
    {
        char c = 'A';
        int i = 65;

        // both print "True"
        Console.WriteLine(i == (int)c);
        Console.WriteLine(c == (char)i);
    }
}

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon