Domanda

Vorrei determinare qual è l ' alfabeto per una determinata locale, preferibilmente in base ai valori dell'intestazione Accept-Language del browser. Qualcuno sa come farlo, usando una libreria se necessario?

È stato utile?

Soluzione

dai un'occhiata a [LocaleData.getExemplarSet] [1]

ad esempio per l'inglese questo restituisce abcdefghijklmnopqrstuvwxyz

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

Altri suggerimenti

Se si desidera solo conoscere il nome di un set di caratteri appropriato per le impostazioni internazionali degli utenti, è possibile provare classe nio.CharSet .

Se vuoi davvero usare l'intestazione Accept-Language, allora c'è un vecchio Articolo di O'Reilly su questo argomento che introduce una classe piuttosto utile chiamata LanguageN .

Penso che uno di questi ti darà un inizio abbastanza decente.

Dipende da quanto specifico vuoi ottenere. Un posto dove guardare sarebbe il "sopprimere-script" proprietà nel registro delle lingue IANA .

Alcune lingue hanno più " alfabeti " che può essere usato per scrivere. Ad esempio, l'Azerbaigian può essere scritto in caratteri latini o arabi. La maggior parte delle lingue, come l'inglese, sono scritte quasi esclusivamente in una singola sceneggiatura, quindi la sceneggiatura corretta è ovvia e dovrebbe essere "soppressa". nei codici di lingua.

Quindi, guardando la voce per il russo, puoi dire che la sceneggiatura preferita è il cirillico, mentre per l'etiope è amarico. Ma tedesco, norvegese e inglese non sono più specifici di "latino". Quindi, con questo metodo, faresti fatica a nascondere umlaut e spine agli americani, o offrire qualsiasi sceneggiatura a uno scrittore del Kashmir.

Questa è una risposta inglese scritta in Århus. Ieri ho sentito alcuni tedeschi dire "Blödheit, à propos, ist dumm". Tuttavia, uno di loro indossava una maglietta che diceva "Conosco la differenza tra ?? e ???????????".

Qual è la risposta alla tua domanda per questo testo? È permesso? Non è un testo inglese?

scroll top