Programación General > Pascal
Codigo ASCII extendido
(1/1)
digimouse:
Hola foro, lo que sucede es que necesito procesar un archivo de texto escrito en español latino (con acentos y ñ) al poner un if (c="á") then, para la letra a con acento agudo me marca error, he intentado hacer con el ascii extendido y queda asi if (c=#160) then, pero entonces simplemente ignora el caracter, he notado que ocurre con todos los caracteres del ascii extendido, ¿alguno de ustedes buenos programadores sabe como arreglar esto? :oops:
Amilius:
Hay varias codificaciones y tienes que poner claro cual usarás. Existen varias y no puedes diferenciar entre todas automáticamente. Por ejemplo Notepad sólo diferencia entre UTF16 y UTF8 si el archivo comienza con BOM*. Todo lo demás lo toma como ASCII extendido para windows, que es distinto del ASCII extendido para DOS. Mientras que 'á' es 160 en DOS en windows 'á' es 225.
* http://en.wikipedia.org/wiki/Byte_order_mark
DriverOp:
Prueba con...
--- Código: Pascal --- if (ord(c) = 160) then ... Asumiendo que c es de tipo char.
Navegación
Ir a la versión completa