Como posso determinar o que o alfabeto para uma localidade está em java?

votos
6

Eu gostaria de determinar o que o alfabeto para uma determinada localidade é, de preferência com base nos valores de cabeçalho Aceitar-idioma do navegador. Alguém sabe como fazer isso, usando uma biblioteca, se necessário?

Publicado 06/01/2009 em 18:13
fonte usuário
Em outras línguas...                            


5 respostas

votos
1

Se você só quer saber o nome de um conjunto de caracteres apropriado para que usuários localidade, então você pode tentar o nio.CharSet classe.

Se você realmente quiser usar o cabeçalho Accept-Language, em seguida, há um velho artigo O'Reilly sobre este assunto que introduz uma classe muito útil chamado LanguageNegotiator .

Eu acho que um desses vai lhe dar um começo decente.

Respondeu 06/01/2009 em 22:04
fonte usuário

votos
1

Depende de como específico que você deseja obter. Um lugar para olhar seria para as propriedades "Suprimir-Script" no registro do idioma IANA .

Algumas línguas têm vários "alfabetos" que podem ser utilizadas para escrever. Por exemplo, do Azerbaijão podem ser escritos em latim ou escrita árabe. A maioria das línguas, como o Inglês, são escritos quase exclusivamente em um único script, de modo que o script correto vai sem dizer, e deve ser "suprimida" em códigos de linguagem.

Então, olhando para a entrada para o russo, você pode dizer que o roteiro preferido é o cirílico, enquanto que para etíope, é amárico. Mas Alemão, Norueguês e Inglês não são mais específicas do que "Latina". Assim, com este método, você teria um tempo difícil escondendo tremas e espinhos de americanos, ou oferecer qualquer script para um escritor Kashmiri.

Respondeu 07/01/2009 em 02:04
fonte usuário

votos
1

Esta é uma resposta Inglês escrito em Århus. Ontem, ouvi alguns alemães dizem 'Blödheit, à propos, dumm ist'. No entanto, um deles usava uma camisa que dizia 'eu sei a diferença entre 文字 e العربية'.

Qual é a resposta à sua pergunta para este texto? É permitido? Não é este um texto em Inglês?

Respondeu 07/01/2009 em 15:09
fonte usuário

votos
0

O International Components for Unicode pode ajudar aqui. Especificamente, a UScriptclasse parece promissor.

A título de curiosidade: O que você precisa para isso?

Respondeu 07/01/2009 em 15:14
fonte usuário

votos
5

dar uma olhada em [LocaleData.getExemplarSet] [1]

por exemplo, para Inglês este retorna abcdefghijklmnopqrstuvwxyz

[1]: http://icu-project.org/apiref/icu4j/com/ibm/icu/util/LocaleData.html#getExemplarSet(com.ibm.icu.util.ULocale , int)

Respondeu 19/08/2010 em 13:22
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more