• Viernes 29 de Marzo de 2024, 00:09

Autor Tema:  Codigo ASCII extendido  (Leído 3232 veces)

digimouse

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Codigo ASCII extendido
« en: Lunes 21 de Marzo de 2011, 16:55 »
0
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

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Codigo ASCII extendido
« Respuesta #1 en: Lunes 21 de Marzo de 2011, 18:37 »
0
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

  • Miembro MUY activo
  • ***
  • Mensajes: 201
    • Ver Perfil
Re: Codigo ASCII extendido
« Respuesta #2 en: Sábado 7 de Mayo de 2011, 04:32 »
0
Prueba con...
Código: Pascal
  1.  
  2. if (ord(c) = 160) then ...
  3.  
  4.  
Asumiendo que c es de tipo char.