En VB clásico había dos funciones muy prácticas para muchos cometidos que permitían obtener el código ASCII de un caracter y viceversa, a partir de un código ASCII sacar el caracter que le correspondía. estas funciones se llamaban Asc y Chr respectivamente.
En C# no existen como tales, pero son muy fáciles de simular igualmente, así:
///Hace falta poner using System.Text al principio para estapublic static int Asc(string s) { return Encoding.ASCII.GetBytes(s)[0]; }
public static char Chr(int c) { return Convert.ToChar(c); }
Es algo muy sencillo pero que puede resultar útil a los programadores principiantes de C# que viene de VB6.
Estos días he tenido quye trabajar un poco con cadenas que representaban números hexadecimales y, la verdad, en C# la cosa no es tan intuitiva cómo solía ser con VB y sucedáneos (VBA, VBScript...). De todos modos no es nada complicado tampoco, sólo algo menos intuitivo.
Para facilitar las cosas he escrito un par de funciones sencillitas que permiten transformar una cadena representando un número hexadecimal en número en base decimal (en un entero, claro), y viceversa: cómo expresar un decimal en formato hexadecimal de texto.
public static long HexToInt(string sHexVal) { return Int64.Parse(sHexVal, NumberStyles.HexNumber); }
public static string IntToHex(long num) { return String.Format("{0:x}", num).ToUpper(); }
Son sencillas pero a más de uno le evitarán romperse el coco unos minutos buscando cómo conseguirlo ;-)
Leyendo el blog de Curt Monash en ComputerWorld me he encontrado con una curiosidad que, a mi por lo menos, me ha sorprendido mucho... y es que al parecer la primera versión de VB la creó una conocida empresa de servicios profesionales de la India, y no Microsoft.
Puedes leer el texto completo en Microsoft = biggest R&D outsourcer of all..