1. Locale 概述
2. Windows 区域设置
3 Linux Locale
3.1 Linux Locale 语言环境名称格式
3.2 常用区域描述(简写)日期习惯
3.3 日期显示格式
3.4 locale相关(环境)变量生效的优先顺序:
4 Linux Locale 操作(左边查看a,右边设置b)
4.1a 查看已开启的语言环境
4.1b 生成语言环境
4.2a 查看Linux系统编码
4.2b 设置系统区域设置
4.3a 列出系统当前使用的字符集
5 更多链接

1. Locale 概述

https://en.wikipedia.org/wiki/Locale_(computer_software)
在计算中,语言环境是一组参数,用于定义用户的语言,区域以及用户希望在其用户界面中看到的任何特殊的变体首选项。
通常,语言环境标识符至少由语言代码和国家/地区代码组成。

https://zh.wikipedia.org/wiki/区域设置
区域设置(locale),也称作“本地化策略集”、“本地环境”,是表达程序用户地区方面的软件设定。
不同系统、平台、与软件有不同的区域设置处理方式和不同的设置范围,但是一般区域设置最少也会包括语言和地区。
操作系统的区域设置通常比较复杂。区域设置的内容包括:数据格式、货币金额格式、小数点符号、千分位符号、度量衡单位、通货符号、日期写法、日历类型、文字排序、姓名格式、地址等等。

https://zh.wikipedia.org/wiki/国际化与本地化
在信息技术领域,国际化与本地化(英文:internationalization and localization)是指修改软件使之能适应目标市场的语言、地区差异以及技术需要。
基于他们的英文单字长度过长,常被分别简称成i18n(18意味着在“internationalization”这个单字中,i和n之间有18个字母)及L10n。使用大写的L以利区分i18n中的i和易于分辨小写l与1。

Localisation Guide  相关资料的汇整...
http://docs.translatehouse.org/projects/localization-guide/en/latest/guide/start.html?id=guide/start#locales

2. Windows 区域设置

Windows 系统的每个区域设置(locale)是一个“语言”及一个排序规则。

  • Windows XP支持超过150个区域设置(locale);
  • Windows Vista支持超过200个区域设置(locale);
  • Windows 7支持至少365个区域设置(locale)。

[控制面板]下找到区域设置...选择适合的区域即可。

3 Linux Locale

https://wiki.archlinux.org/index.php/Locale
区域设置是使用glibc的渲染文本,正确地显示区域货币值,时间和日期格式,字符排列方式和其他一些本地化的特定标准和其他区域设置的程序或库。

3.1 Linux Locale 语言环境名称格式

language[_territory][.codeset][@modifier]

  • language 是ISO 639-1标准中定义的双字母的语言代码,
  • territory 是ISO 3166-1标准中定义的双字母的国家和地区代码,
  • codeset 是字符集的名称 (如 UTF-8等),
  • modifier 是某些 locale 变体的修正符。

参见: setlocale https://jlk.fjfi.cvut.cz/arch/manpages/man/setlocale.3

3.2 常用区域描述(简写)日期习惯

中文-中国大陆zh-CNY M D
英语-英国en-GBD M Y
英语-美国en-USM D Y

3.3 日期显示格式

$ LC_TIME=en_US.UTF-8 date
Thu 09 Jan 2020 07:52:05 PM CST
$ LC_TIME=en_GB.UTF-8 date
Thu Jan  9 19:52:26 CST 2020

3.4 locale相关(环境)变量生效的优先顺序:

  1. LANGUAGE 指定个人对语言环境值的主次偏好,例如zh_CN:en_US:en
  2. LC_ALL 这不是一个环境变量,是一个可被C语言库函数setlocale设置的宏,其值可覆盖所有其他的locale设定。因此缺省时此值为空
  3. LC_xxx 可设定locale各方面(category)的值,可以覆盖LANG的值。
  4. LANG 指定默认使用的locale值

4 Linux Locale 操作(左边查看a,右边设置b)

查看命令 a   设置命令 b
4.1a 查看已开启的语言环境 4.1b Generating locales 生成语言环境
$ locale 列出当前采用的各项本地策略,这些由LC_*环境变量定义
$ locale -a 列出系统中已经安装的所有locale
$ localedef --list-archive 列出已生成的可用语言环境, 或者

$ localectl list-locales
en_US.UTF-8
zh_CN.UTF-8

查看可开启的所有语言环境
$ cat /etc/locale.gen |wc -l
511 // 除去前面的注释文字,下面可开启的有486个(其中UTF-8的有312个;ISO-8859系的有153个;还有一些国家专用的如GB18030等)。

1.1 修改locale.gen, 取消en_US.UTF-8 UTF-8和其他必要的语言前面的注释符号
$ sudo vi /etc/locale.gen
en_US.UTF-8 UTF-8
zh_CN.GB18030 GB18030
zh_CN.GBK GBK
zh_CN.UTF-8 UTF-8
zh_CN GB2312

编辑完成后 :wq 保存退出.

1.2 生成(generate)语言环境
$ sudo locale-gen
Generating locales...
en_US.UTF-8... done
zh_CN.GB18030... done
zh_CN.GB2312... done
zh_CN.GBK... done
zh_CN.UTF-8... done
Generation complete.
   
4.2a 查看Linux/Unix操作系统编码: 4.2b 设置系统区域设置
$ echo $LANG
en_US.UTF-8
$ cat /etc/locale.conf
LANG=en_US.UTF-8
$ printenv 查看环境变量

4.3a 列出系统当前使用的字符集
$ locale charmap
UTF-8
查看系统已经安装的所有字符集
$ locale -m |wc -l 236 // 当前系统有236个

编辑: /etc/locale.conf, 写入LANG,比如: LANG=en_US.UTF-8 变量值在先前生成的语言环境中选择。

$ sudo vi /etc/locale.conf
LANG=en_US.UTF-8

或者运行

# localectl set-locale LANG = zh_CN.UTF-8

5 更多链接

https://wiki.archlinux.org/index.php/Localization/Simplified_Chinese_(简体中文)
要正确显示中文,必需设置正确的locale并安装合适的中文字体。

https://docs.oracle.com/cd/E19683-01/816-3981/overview-46/index.html
Documentation Home  > 国际语言环境指南  > 第 1 章 Solaris 国际化概述  > 使用语言环境种类进行本地化  > 日期格式 >
国际语言环境指南 > 日期格式 (下表显示在世界各地使用的一些日期格式。 请注意,即使在一个国家/地区内部,日期格式可能也有所不同)

https://www.ibm.com/support/knowledgecenter/zh/SSEPGG_10.5.0/com.ibm.db2.luw.admin.nls.doc/doc/r0004572.html
主页 > DB2 for Linux UNIX and Windows 10.5.0 > 开发用于访问和管理数据的代码 > 多文化支持 > 应用程序开发注意事项 >
基于地域代码的日期和时间格式

https://zh.wikipedia.org/wiki/各地日期和时间表示法

Locale的更多相关文章

  1. Linux的locale、LC_ALL和LANG

    如果你是一个Linux新手,并且刚刚安装了一个新的英文系统但想要设置成中文系统,肯定会接触到上面几个变量,在网上搜索了一系列解决方法,给一些变量赋一下值,再export一下,或者写到配置文件里面,然后 ...

  2. Fedora 22中的Locale and Keyboard Configuration

    Introduction The system locale specifies the language settings of system services and user interface ...

  3. C 标准库系列之locale.h

    locale.h 区域设置相关,主要针对时间日期.货币格式.字符控制.数字格式等以满足某区域的设置需要. locale设置类别主要包括以下几个宏定义的类别: LC_ALL:设置所有的类别: LC_CO ...

  4. Windows Locale Codes - Sortable list(具体一个语言里还可具体细分,中国是2052,法国是1036)

    Windows Locale Codes - Sortable list NOTE: Code page is an outdated method for character encoding, y ...

  5. 中文Locale

    sudo apt-get install locales dpkg-reconfigure locales 查看当前已安装locale: locale -a 查看locale设置: locale

  6. ubuntu locale 语言设置

    第一步,编辑文件 代码: sudo gedit  /var/lib/locales/supported.d/local 写入相关内容,比如写入如下内容: 代码: zh_CN.UTF-8 UTF-8zh ...

  7. bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)

    bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) Q: hubery@roaster:~$ locale loc ...

  8. ubuntu处理中文时设置locale

    ubuntu下涉及中文处理的程序时,需要正确设置,否则会出现问号或者乱码的情况 具体的原因: http://wiki.ubuntu.org.cn/Locale locale的解释 http://wik ...

  9. Flex编译程序出现 Could not find compiled resource bundle 'SharedResources' for locale 'en_US'.

    Flex编译程序出现 Could not find compiled resource bundle 'SharedResources' for locale 'en_US'. 而且静态类居然为nul ...

  10. locale的设定及其LANG、LC_ALL、LANGUAGE环境变量的区别

    locale这个单词中文翻译成地区或者地域,其实这个单词包含的意义要宽泛很多.Locale是根据计算机用户所使用的语言,所在国家或者地区,以及当地的文化传统所定义的一个软件运行时的语言环境. [ora ...

随机推荐

  1. Git储藏工作现场

    假设你现在在dev分支工作,此时你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,你当前工作只进行到一半,还没法提交,预计完成还需1天时间 ...

  2. Bug搬运工-CSCvn51483:AP datasheet should contain info if the AP contains or not temperature sensor

    目前在老一些的思科AP上,应该都没有温度传感器的功能(例如AP1600,wave 1 AP1700...),但是在思科官方没有明确的文档去说明这个问题. 在Outdoor AP(室外AP,例如AP15 ...

  3. 【PAT甲级】1099 Build A Binary Search Tree (30 分)

    题意: 输入一个正整数N(<=100),接着输入N行每行包括0~N-1结点的左右子结点,接着输入一行N个数表示数的结点值.输出这颗二叉排序树的层次遍历. AAAAAccepted code: # ...

  4. php mongdb driver 1.17

    Installation To build and install the driver: $ pecl install mongodb $ echo "extension=mongodb. ...

  5. 【Go语言系列】第三方框架和库——GIN:GIN介绍

    1.Gin 是什么? Gin 是一个用 Go (Golang) 编写的 HTTP web 框架. 它是一个类似于 martini 但拥有更好性能的 API 框架, 由于 httprouter,速度提高 ...

  6. 【Go语言系列】1.2、GO语言简介:哪些大公司正在使用Go语言

    Go语言的强项在于它适合用来开发网络并发方面的服务,比如消息推送.监控.容器等,所以在高并发的项目上大多数公司会优先选择 Golang 作为开发语言. 1.Google 这个不用多做介绍,作为开发Go ...

  7. Stream:java1.8新特性

    原 Stream:java1.8新特性 2017年08月01日 18:15:43 kekeair-zhang 阅读数:392 标签: streamjava1-8新特性 更多 个人分类: 日记 版权声明 ...

  8. Cisco Cat4500系列High CPU故障步骤摘要

    在实际网络环境中,很多时候都会出现设备high CPU的情况,有些时候可能是bug,而某些情况下,也可能是网络中发生了变化,导致了设备出现high CPU情况,这里主要记录一下Cisco Cat450 ...

  9. ISE主备注册和同步

    Synchronize Primary and Secondary Cisco ISE Nodes You can make configuration changes to Cisco ISE on ...

  10. mqtt开源服务器 EMQX ,客户端MQTTX5.0,使用指南

    服务器 EMQX 官网: https://docs.emqx.io/broker/v3/cn/getstarted.html#mqtt-clients 一.安装启动 # 各平台下载https://ww ...