listas - ¿Cómo puedo determinar cuál es el alfabeto de una localidad en java?
como definir un alfabeto en java (5)
Me gustaría determinar cuál es el alfabeto de una configuración regional determinada, preferiblemente según los valores del encabezado Accept-Language del navegador. Alguien sabe cómo hacer esto, utilizando una biblioteca si es necesario?
Si solo quiere saber el nombre de un conjunto de caracteres apropiado para la configuración regional de un usuario, entonces puede probar la clase nio.CharSet .
Si realmente quiere usar el encabezado Accept-Language, entonces hay un viejo artículo de O''Reilly sobre este tema que presenta una clase bastante útil llamada LanguageNegotiator .
Creo que uno de esos te dará un comienzo lo suficientemente decente.
Depende de qué tan específico desea obtener. Un lugar para buscar sería en las propiedades "Suppress-Script" en el registro del lenguaje IANA .
Algunos idiomas tienen múltiples "alfabetos" que se pueden usar para escribir. Por ejemplo, Azerbaiyán se puede escribir en escritura latina o árabe. La mayoría de los idiomas, como el inglés, se escriben casi exclusivamente en un solo guión, por lo que el guión correcto es evidente y se debe "suprimir" en los códigos de idioma.
Entonces, al mirar la entrada para el ruso, se puede decir que el guión preferido es cirílico, mientras que para el etíope es amhárico. Pero el alemán, el noruego y el inglés no son más específicos que el "latín". Entonces, con este método, tendrías dificultades para esconder diéresis y espinas de los estadounidenses u ofrecer cualquier script a un escritor de Cachemira.
Esta es una respuesta en inglés escrita en Århus. Ayer, escuché a algunos alemanes decir ''Blödheit, à propos, ist dumm''. Sin embargo, uno de ellos llevaba una camisa que decía ''Sé la diferencia entre 文字 y العربية''.
¿Cuál es la respuesta a tu pregunta para este texto? ¿Esta permitido? ¿No es este un texto en inglés?
Los componentes internacionales para Unicode pueden ayudar aquí. Específicamente, la clase UScript
parece prometedora.
Por curiosidad: ¿Para qué lo necesitas?
echa un vistazo a [LocaleData.getExemplarSet] [1]
por ejemplo para inglés esto devuelve abcdefghijklmnopqrstuvwxyz
[1]: http://icu-project.org/apiref/icu4j/com/ibm/icu/util/LocaleData.html#getExemplarSet(com.ibm.icu.util.ULocale , int)