小工具知识网

当前位置: 首页 > 行业知识 > Android多国语言翻译 国际化(i18n)

行业知识

Android多国语言翻译 国际化(i18n)

2026-11-09 08:08:26 来源:互联网转载

i18n 是“国际化”(Internationalization)的缩写,其中 i 是单词 “internationalization” 的第一个字母,18 代表字母 i 和 n 之间的 18 个字母,n 是单词的最后一个字母。这种缩写形式主要用于软件开发领域,以简洁地表示支持多语言的概念。

多语言或国际化在软件中通常指的是使软件能够适配多种语言和地区的过程,不仅包括翻译文本,还包括考虑日期和时间格式、货币单位、数字格式、排序规则等地区差异性问题。

使用 i18n 作为国际化的缩写,可以让开发者快速识别代码库中与多语言支持相关的部分,比如文件夹、函数、变量名等。类似的还有 l10n,用来表示“本地化”(Localization),即根据特定国家或地区的语言和文化习惯调整软件的过程。

语言目录详细对应关系

Arabic, Egypt (ar-rEG) —————————–阿拉伯语,埃及

Arabic, Israel (ar-rIL) ——————————-阿拉伯语,以色列

Bulgarian, Bulgaria (bg-rBG) ———————保加利亚语,保加利亚

Catalan, Spain (ca-rES) —————————加泰隆语,西班牙

Czech, Czech Republic (cs-rCZ) —————–捷克语,捷克共和国

Danish, Denmark(da-rDK) ————————丹麦语,丹麦

German, Austria (de-rAT) ————————-德语,奥地利

German, Switzerland (de-rCH) ——————-德语,瑞士

German, Germany (de-rDE) ———————-德语,德国

German, Liechtenstein (de-rLI) ——————德语,列支敦士登的

Greek, Greece (el-rGR) —————————-希腊语,希腊

English, Australia (en-rAU) ————————-英语,澳大利亚

English, Canada (en-rCA) ————————–英语,加拿大

English, Britain (en-rGB) —————————-英语,英国

English, Ireland (en-rIE) —————————–英语,爱尔兰

English, India (en-rIN) ——————————–英语,印度

English, New Zealand (en-rNZ) ———————英语,新西兰

English, Singapore(en-rSG) ————————–英语,新加坡

English, US (en-rUS) ———————————–英语,美国

English, Zimbabwe (en-rZA) ————————–英语,津巴布韦

Spanish (es-rES) —————————————-西班牙

Spanish, US (es-rUS) ———————————–西班牙语,美国

Finnish, Finland (fi-rFI) ———————————芬兰语,芬兰

French, Belgium (fr-rBE) ——————————-法语,比利时

French, Canada (fr-rCA) ——————————-法语,加拿大

French, Switzerland (fr-rCH) ————————–法语,瑞士

French, France (fr-rFR) ——————————–法语,法国

Hebrew, Israel (he-rIL) ———————————希伯来语,以色列

Hindi, India (hi-rIN) ————————————-印地语,印度

Croatian, Croatia (hr-rHR) —————————-克罗地亚语,克罗地亚

Hungarian, Hungary (hu-rHU) ————————匈牙利语,匈牙利

Indonesian, Indonesia (id-rID) ————————印尼语,印尼

Italian, Switzerland (it-rCH) —————————-意大利语,瑞士

Italian, Italy (it-rIT) —————————————意大利语,意大利

Japanese (ja-rJP) —————————————-日语

Korean (ko-rKR) ——————————————朝鲜语

Lithuanian, Lithuania (lt-rLT) ————————–立陶宛语,立陶宛

Latvian, Latvia (lv-rLV) ———————————拉托维亚语,拉托维亚

Norwegian-Bokmol, Norway(nb-rNO) —————挪威语,挪威

Dutch, Belgium (nl-rBE) ——————————–荷兰语,比利时

Dutch, Netherlands (nl-rNL) —————————荷兰语,荷兰

Polish (pl-rPL) ——————————————-波兰

Portuguese, Brazil (pt-rBR) —————————葡萄牙语,巴西

Portuguese, Portugal (pt-rPT) ————————葡萄牙语,葡萄牙

Romanian, Romania (ro-rRO) ————————罗马尼亚语,罗马尼亚

Russian (ru-rRU) —————————————-俄语

Slovak, Slovakia (sk-rSK) ——————————斯洛伐克语,斯洛伐克

Slovenian, Slovenia (sl-rSI) —————————-斯洛文尼亚语,斯洛文尼亚

Serbian (sr-rRS) —————————————-塞尔维亚语

Swedish, Sweden (sv-rSE) —————————-瑞典语,瑞典

Thai, Thailand (th-rTH) ——————————–泰语,泰国

Tagalog, Philippines (tl-rPH) ————————–菲律宾语,菲律宾

Turkish, Turkey (tr-rTR) ——————————-土耳其语,土耳其

Ukrainian, Ukraine (uk-rUA) ————————–联合王国

Vietnamese, Vietnam (vi-rVN) ———————–越南语,越南

Chinese, PRC (zh-rCN)——————————–中文,中国

Chinese, Taiwan (zh-rTW)—————————–中文,台湾

RTL工具类

针对RTL语言,如果不想重新切图

    /**     * RTL语言及其通常用的简称     * 1. 阿拉伯语 (Arabic) - `ar`     * 2. 波斯语 (Persian/Farsi) - `fa`     * 3. 乌尔都语 (Urdu) - `ur`     * 4. 希伯来语 (Hebrew) - `he`(过去曾被表示为`iw`)     * 5. 叙利亚语 (Syriac) - `syr`     * 6. 巴什基尔语 (Bashkir) - `ba`     * 7. 吉尔吉斯语 (Kyrgyz) - `ky`     * 8. 塔塔尔语 (Tatar) - `tt`     * 9. 乌兹别克语(使用阿拉伯字母)(Uzbek Arabic script) - `uz_Arab`     * 10. 犹太-佩尔维安语 (Judeo-Persian) - 无特定ISO代码,通常使用波斯语编码`fa`     *     * @return     */    public static boolean isRTL(Context context) {        String language = context.getResources().getConfiguration().locale.getLanguage();        final String RTL = "[ar,fa,iw,ur,ur,he,syr,ba,ky,tt,uz_Arab]";        return RTL.contains(language);    }    public static void autoImageViewRTL(ImageView imageView) {        if (imageView == null) {            return;        }        imageView.setScaleX(isRTL(imageView.getContext()) ? -1.0f : 1.0f);    }}
                                                                                                                                                                                                                                                                                                                                                                                                                                              
CodeLanguageCodeLanguage
af南非荷兰语ko韩语
am阿姆哈拉语ky吉尔吉斯
ar阿拉伯语lo老挝语
as阿萨姆语lt立陶宛语
az阿塞拜疆语lv拉脱维亚语
be白俄罗斯语mk马其顿语
bg保加利亚语ml马拉雅拉姆语
bn孟加拉语mn蒙古语
bs波斯尼亚语mr马拉地语
ca加泰罗尼亚语ms马来语
cs捷克语my缅甸语
da丹麦语my-MM缅甸语(缅甸)
de德语nb挪威语
el希腊语ne尼泊尔语
en-AU英语(澳大利亚)nl荷兰语
en-CA英语(加拿大)orOdia
en-GB英语(英国)pa旁遮普语
en-IN英语(印度)pl波兰语
en-US英语(美国)pt-BR葡萄牙语(巴西)
en-XA英语(伪口音)pt-PT葡萄牙语(葡萄牙)
es西班牙语(西班牙)ro罗马尼亚语
es-US西班牙语(美国)ru俄语
et爱沙尼亚语si僧伽罗语
eu巴斯克语sk斯洛伐克语
fa波斯语sl斯洛文尼亚语
fi芬兰语sq阿尔巴尼亚语
fr法语(法国)sr塞尔维亚语(西里尔文)
fr-CA法语(加拿大)sr-Latn塞尔维亚语(拉丁语)
gl加利西亚语sv瑞典语
gu古吉拉特语sw斯瓦希里语
hi印地语ta泰米尔语
hr克罗地亚语te泰卢固语
hu匈牙利语th泰语
hy亚美尼亚语tl菲律宾语
in印度尼西亚语 id / intr土耳其语
is冰岛语uk乌克兰语
it意大利语ur乌尔都语
iw希伯来语uz乌兹别克语
ja日语vi越南语
ka格鲁吉亚语zh-CN中文(简体)
kk哈萨克语zh-HK中文(香港)
km高棉语zh-TW中文(繁体)
kn卡纳达语zu祖鲁语

上一篇:笔记本怎么架设服务器?

下一篇:qq怎么认证?