none
Codificación de caracteres españoles en vs 2015 RRS feed

Todas las respuestas

  • Bueno, primero un detallito:  El foro correcto para C++ es el otro, el que se llama C++ y MFC.  Este es para Visual C++, una variante para .Net framework.  Pero no se preocupe, yo puedo cambiar su pregunta de lugar.

    En cuanto a su pregunta:  La buena teoría dice que cambiándose de std::cout a std::wcout debería resultar para poder mostrar cadenas de texto Unicode.  El detalle, sin embargo, es que además de hacer esto hay que configurar la consola para que muestre Unicode.  Tal vez lo más rápido es cambiar la fuente de la consola a, por ejemplo, Lucida Console Unicode.  Esto se hace en las propiedades de cmd.exe, que me parece da lo mismo si busca el shortcut "Command prompt" en su menú inicio de Windows y le da clic derecho y selecciona Propiedades (Properties).


    Jose R. MCP
    Code Samples

    jueves, 28 de abril de 2016 21:02
    Moderador
  • Hmmm he tratado de ejecutar un programa Python 3 desde la consola y le he hecho imprimir el mismo texto y la puntuación unicode es correcta... no obstante, entre las propiedades de cmd.exe no he visto la manera de configurar la fuente... igualmente, yo tengo descargada la versión inglesa de community, aun así en advanced save options del menu file de vs tengo seleccionada la codificación western europe (windows), que codificación teneis configurada vosotros?

    viernes, 29 de abril de 2016 10:29
  • Busque en el menú inicio el atajo de la línea de comando, luego clic derecho, luego Propiedades del menú emergente.  Obtendrá esto:

    ¿Ve usted la pestaña Font ahí?  Esa puede  usar para cambiar la fuente.


    Jose R. MCP
    Code Samples

    viernes, 29 de abril de 2016 15:18
    Moderador
  • Hecho, ahora la fuente es Lucid Console, no obstante el problema con los acentos persiste... aunque gracias igualmente!
    sábado, 30 de abril de 2016 13:39
  • Curioso.  Trate ejecutando cmd.exe /u, luego ejecutando su programa en la consola que se muestra.

    Si no, ejecute cmd.exe, luego ejecute el comando chcp 65001, luego ejecute su programa en esa consola.


    Jose R. MCP
    Code Samples

    sábado, 30 de abril de 2016 22:56
    Moderador
  • Bien, con cmd.exe/u no ha pasado nada: José sigue mostrándose como Josú, en cambio con chcp 65001 en vez de José sale Jos[] ¡Algo es algo!

    Nota: He instalado visual studio 2015 en tres ordenadores diferentes y en todos tengo problemas con los acentos...

    domingo, 1 de mayo de 2016 17:23
  • El problema es un poco delicado, porque se debe a la página de códigos de la consola, que es ANSI, mientras que la de Windows es CPnosecuántos.

    Digamos que el código ASCII para tu letra acentuada en el editor de Visual Studio es diferente al que luego está en el juego de caracteres de la consola. 

    Tampoco tengo fresco el tema, pero como te recomienda José, puedes probar con chcp 850, o chcp 437, pero creo que no te va a solucionar el tema.

    Cuando a mi me pasa eso, lo que suelo hacer es escribir las cadenas sin acentos, o buscar el código ASCII de la letra con el acento por el equivalente en hexadecimal insertado en la cadena.

    Aunque lo más fácil es que te hagas una función que busque la letra acentuada y la reemplace por la equivalente en ASCII. Para ver los caracteres ASCII extendidos tienes aquí una referencia, aunque hay muchas: http://www.asciitable.com/


    MVP Visual C++ - Visita mi blog sobre desarrollo: http://geeks.ms/blogs/rfog/

    lunes, 9 de mayo de 2016 14:04
    Moderador