Chr y Asc

13/04/2005 - 09:54 por JuanilloFox | Informe spam
Hola grupo,

tengo que pasar un programa de Visual Basic a C# y me he encontrado con
algunas dudas:

Existen las funciones Chr y Asc de Visual Basic. La primera extrae un valor
ANSI de un numérico dado.
Es decir Chr(65) = "A"; Chr(97) = "a".
El formato para pasarlas a C# creo que es (char)65; (char)97
respectivamente.

La segunda Asc("a") = 97 no he encontrado forma de ponerlas en C#
Si alguno puede ayudarme
Un saludo

juanillofox@andujar.com
lo agradecería.

Preguntas similare

Leer las respuestas

#1 JuanilloFox
19/04/2005 - 09:40 | Informe spam
Hola MEDEX,
Según me comentas al realizar

int num = System.Convert.ToInt16('a');

el valor que tendría num en este caso sería igual a 97 ¿no?. Este sería el
equivalente a poner en Visual Basic Asc("a").

Aunque según he averiguado que al introducir

char num = System.Convert.ToChar("a")

se realiza automáticamente en la variable num el almacenamiento de su peso
unicode es decir 97 y el correspondiente carácter asignado "a" es decir que
posteriormente puedo realizar cálculos con su peso por ejemplo...

num = num + 4
obteniendo el valor num = 101 y pasarlo posteriormente a cadena

string cnum = Convert.ToString(num)

obteniendo el valor unicode cnum = "e";


Un saludo


Respuesta Responder a este mensaje
#2 Octavio Hernandez
19/04/2005 - 17:47 | Informe spam
Juanillo,

Convert.ToString(101) producirá la cadena "101" y no el carácter 'e' !!!

Para lo que quieres creo que lo mejor es utilizar simplemente casts
(conversiones explícitas) así:

int num = 97;
char ch1 = (char) num; // ch1 vale 'a'

int num2 = (int) ch1; // num2 vale 97
num2 += 4; // num2 vale 101
char ch2 = (char) num2; // ch2 vale 'e'

Saludos,

Octavio

"JuanilloFox" escribió en el mensaje
news:
Hola MEDEX,
Según me comentas al realizar

int num = System.Convert.ToInt16('a');

el valor que tendría num en este caso sería igual a 97 ¿no?. Este sería el
equivalente a poner en Visual Basic Asc("a").

Aunque según he averiguado que al introducir

char num = System.Convert.ToChar("a")

se realiza automáticamente en la variable num el almacenamiento de su peso
unicode es decir 97 y el correspondiente carácter asignado "a" es decir
que
posteriormente puedo realizar cálculos con su peso por ejemplo...

num = num + 4
obteniendo el valor num = 101 y pasarlo posteriormente a cadena

string cnum = Convert.ToString(num)

obteniendo el valor unicode cnum = "e";


Un saludo




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida