![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#4
|
|||
|
|||
|
Para recibir y mostrar correctamente texto codificado en UTF-8 en Delphi (especialmente versiones como Delphi 7 que no tienen soporte nativo de UTF-8 en los AnsiString), necesitas realizar algunas conversiones manuales o usar componentes que manejen UTF-8 adecuadamente.
✅ Delphi moderno (Delphi XE en adelante) Si estás usando una versión moderna de Delphi (Delphi XE+), puedes trabajar directamente con UTF8String y UnicodeString, ya que la clase String es UnicodeString por defecto.
🧵 Delphi 7 o versiones antiguas (AnsiString por defecto) Delphi 7 no trabaja de forma nativa con UTF-8, pero puedes usar una función como esta para convertir una cadena en UTF-8 a WideString o string legible: ✅ Opción 1: Usar UTF8Decode (de SysUtils)
🔴 Nota importante: UTF8Decode solo convierte UTF-8 en bytes, no convierte automáticamente los \uXXXX (Unicode escapes como \u00e9), esos debes convertirlos manualmente si vienen así (como en JSON). ✅ Para reemplazar \uXXXX por caracteres reales (por ejemplo, en respuestas JSON) Puedes usar una función como esta para convertir los \uXXXX en caracteres legibles:
EJEMPLO DE USO:
🔧 Si estás trabajando con HTTP (como REST/JSON): Asegúrate de que el componente (como IdHTTP, Synapse, HttpClient) esté configurado para recibir texto como UTF-8:
Luego haz la conversión adecuada al recibir la respuesta. |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Vaciar el contenido de un TStringStream | adebonis | Varios | 5 | 04-02-2019 17:26:55 |
| TRichEdit, TStringStream y cierto error que no logro "cachar"... | TiammatMX | OOP | 2 | 12-05-2012 00:36:18 |
|