![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
Leer lineas de consola de comandos
hola, tengo un programa que hice de consola el cual me devuelve unas líneas de comando que después yo leo y manejo según lo que me pongan, el porblema que yo tengo es a la hora de leer esas lineas,
y es que si hay un caracter especial 'ñ','á'... esa palabra me la deja en blanco, por lo que he visto el problema esta en 'OutputLine := WideString(Buffer) ; ' he probado a cambiar el wideString por string UTF8Encode... y no me han funcionado.
Última edición por Neftali [Germán.Estévez] fecha: 07-05-2025 a las 16:14:19. Razón: Poner los TAGs correctos |
|
#2
|
||||
|
||||
|
¿Con qué versión de Delphi estás trabajando?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#3
|
|||
|
|||
|
DELPHI 2005
|
|
#4
|
||||
|
||||
|
Pensaba que tal vez era más antigua.
Tendrás que hacer pruebas cambiando codificación. Yo creo que puede ir por ahí...
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#5
|
|||
|
|||
|
El problema esta en esta linea:
Ese cast no convierte correctamente texto con acentos o caracteres especiales si el texto viene codificado en UTF-8 Tienes que reemplazar esa línea con una conversión correcta desde UTF-8 a WideString, usando UTF8Decode, que está disponible en Delphi 2005. Modifica esto:
por esto:
Si sabés que no está usando UTF-8, sino una codificación ANSI típica (como Latin1 / Windows-1252), utiliza esto en su lugar:
Pero en general, UTF-8 es lo estándar moderno, así que UTF8Decode() es lo más seguro. |
|
#6
|
|||
|
|||
|
Cita:
creo que uso Latin1 el problema es que parece que la función AnsiToWide no esta en delphi 2005, le he preguntado al chatgpt y me ha montado una función pero no ha funcionado aun así, después he probado lo del utf8Decode me ha preguntado: contains international characters. Do you wish to save this file in UTF8 encoding? If you choose 'NO', the international characters will be lost. le he dicho que 'yes' y el programa ha seguido funcionando, el decode ha funcionado a la hora de escribir en el log hasta que ha llegao a la linea que tiene un acento y la ha dejado en blanco: Cita:
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Como copiar lineas de una consola? | elmago00 | Varios | 7 | 06-08-2013 10:19:49 |
| Leer 4 Lineas de dos Archivo .txt | wcbs | Varios | 13 | 05-09-2012 15:05:36 |
| ayuda ¿Como crear lineas verticales y horizontales en un programa tipo consola!! | jeral15 | Varios | 5 | 13-06-2010 19:09:54 |
| Leer salidas de consola para una GUI | progmaq | Varios | 1 | 13-01-2005 15:56:14 |
| Abrir COnsola y comandos del DOS | sarga | API de Windows | 1 | 14-04-2004 04:30:01 |
|