2010-07-28 13 views
5

¿hay alguna solución simple/liviana para cambiar al menos algunos de los símbolos no ASCII a los análogos ASCII respectivos? Por ejemplo esta cadenadowngrade símbolos no ascii al equivalente ASCII de 7 bits más cercano (preferiblemente Java)

abc-åäö.txt 

debe cambiarse a

abc-aao.txt 

Un poco de historia: Zip-herramientas no son compatibles con fiabilidad UTF-8, de ahí la necesidad de rebajar. La función "descargar archivos adjuntos como archivo único zip" de AFAICR Google reemplaza cualquier símbolo que no sea ASCII con el carácter '_'.

PD: el código también podría estar en otro idioma, si es más o menos comprensible voy a llevar eso a Java. PPS: mi primera pregunta hasta el momento, así que por favor no menos yo debajo de la tierra ¿de acuerdo?

+2

posible duplicado de [Conversión de Símbolos, Accent Cartas al alfabeto Inglés.] (Http://stackoverflow.com/questions/1008802/converting-symbols-accent-letters-to-english-alphabet) – McDowell

+0

Entonces, ¿cómo habría que proceder , cierra esto como un duplicado? Las preguntas aparentemente están bastante cerca pero todavía no pude ver eso antes de publicar el mío ... –

+0

posible duplicado de [Reemplazar caracteres nacionales con equivalente ASCII.] (Http://stackoverflow.com/questions/3194516/replace-national- characters-with-ascii-equivalent) – dan04

Respuesta

1

¿Tal vez this haría?

+0

gracias por la referencia, pero no veo el código real allí, aparentemente esto ya sea parte de JRE (ese java.text.Normalizer o algo similar) o no es una solución liviana ... –

0

Si desea considerar el uso de Python, hay un paquete bastante bueno pitón llamada unidecode, que se puede obtener la translite ASCII raciones de texto Unicode.

Cuestiones relacionadas