Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Convertir caracteres UTF a ASCII

Estas en el tema de Convertir caracteres UTF a ASCII en el foro de C/C++ en Foros del Web. Hola a todos Ando con un problemilla que no logro resolver. Un pequeñísimo ejemplo, he usado un array de char y una variable string, y ...
  #1 (permalink)  
Antiguo 31/03/2010, 15:50
Avatar de jc_moj  
Fecha de Ingreso: septiembre-2009
Ubicación: Andalucía
Mensajes: 137
Antigüedad: 14 años, 7 meses
Puntos: 12
Convertir caracteres UTF a ASCII

Hola a todos

Ando con un problemilla que no logro resolver. Un pequeñísimo ejemplo, he usado un array de char y una variable string, y en ambos casos el resultado es el mismo:

Código C++:
Ver original
  1. int main(int argc, char** argv)
  2. {
  3.     char cad[] = "Programación";
  4.     string cadena;
  5.     int i;
  6.    
  7.     cout << endl << "Array de char:" << endl;
  8.     cout << "Cadena: " << cad << endl;
  9.     cout << "Longitud: " << strlen(cad) << endl;
  10.  
  11.     for(i = 0; i < strlen(cad); i++){
  12.         cout << cad[i] << '-';
  13.     }
  14.     cout << endl;
  15.    
  16.     cout << endl << "String:" << endl;
  17.     cadena = "Programación";
  18.     cout << "Cadena: " << cadena << endl;
  19.     cout << "Longitud: " << cadena.length() << endl;
  20.  
  21.     for(i = 0; i < cadena.length(); i++){
  22.         cout << cadena.at(i) << '-';
  23.     }
  24.    
  25.     cout << endl << endl;
  26.    
  27.     return 0;
  28. }

El problema es la vocal acentuada, como se ve en la salida del programa:

Array de char:
Cadena: Programación
Longitud: 13
P-r-o-g-r-a-m-a-c-i-�-�-n-

String:
Cadena: Programación
Longitud: 13
P-r-o-g-r-a-m-a-c-i-�-�-n-

Mi duda es cómo puedo hacer para extraer los caracteres que contiene la cadena.

Saludos
  #2 (permalink)  
Antiguo 31/03/2010, 20:15
 
Fecha de Ingreso: enero-2007
Mensajes: 8
Antigüedad: 17 años, 2 meses
Puntos: 0
Respuesta: Convertir caracteres UTF a ASCII

Hola.
Una manera sería obtener el valor UTF y convertirlo al equivalente ASCII, el problema es que las equivalencias tienes que hacerlas tu.

Etiquetas: ascii, caracteres, utf
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:02.