diff --git a/frameworks/intl/BUILD.gn b/frameworks/intl/BUILD.gn
index 81704b44f3eff5feef6b894328ccf8d7236404f5..1a4bbf7350cfbb4c87458dc20ca921a9d7159a96 100644
--- a/frameworks/intl/BUILD.gn
+++ b/frameworks/intl/BUILD.gn
@@ -85,10 +85,13 @@ ohos_shared_library("intl_util") {
deps = [
":config_locales_xml",
":config_regions_xml",
+ ":en_Latn_timezone_xml",
":forbidden_languages_xml",
":forbidden_regions_xml",
":language_config.para",
+ ":timezone_supported_locales",
":white_languages_xml",
+ ":zh_Hans_timezone_xml",
"//third_party/icu/icu4c:ohos_icudat",
"//third_party/icu/icu4c:shared_icui18n",
"//third_party/icu/icu4c:shared_icuuc",
@@ -151,3 +154,25 @@ ohos_prebuilt_etc("forbidden_regions_xml") {
part_name = "i18n"
subsystem_name = "global"
}
+
+ohos_prebuilt_etc("zh_Hans_timezone_xml") {
+ source = "//base/global/i18n/frameworks/intl/etc/timezone/zh-Hans.xml"
+ module_install_dir = "usr/ohos_timezone/"
+ part_name = "i18n"
+ subsystem_name = "global"
+}
+
+ohos_prebuilt_etc("en_Latn_timezone_xml") {
+ source = "//base/global/i18n/frameworks/intl/etc/timezone/en-Latn.xml"
+ module_install_dir = "usr/ohos_timezone/"
+ part_name = "i18n"
+ subsystem_name = "global"
+}
+
+ohos_prebuilt_etc("timezone_supported_locales") {
+ source =
+ "//base/global/i18n/frameworks/intl/etc/timezone/supported_locales.xml"
+ module_install_dir = "usr/ohos_timezone/"
+ part_name = "i18n"
+ subsystem_name = "global"
+}
diff --git a/frameworks/intl/etc/timezone/en-Latn.xml b/frameworks/intl/etc/timezone/en-Latn.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4d13a590508e91994d379a4332a8bd8887d231dc
--- /dev/null
+++ b/frameworks/intl/etc/timezone/en-Latn.xml
@@ -0,0 +1,136 @@
+
+
+
+
+ Auckland
+ Pacific/Auckland
+ Auckland (New Zealand)
+
+
+ Magadan
+ Asia/Magadan
+ Magadan (Russia)
+
+
+ Lord Howe Island
+ Australia/Lord_Howe
+ Lord Howe Island (Australia)
+
+
+ Tokyo
+ Asia/Tokyo
+ Tokyo (Japan)
+
+
+ Shanghai
+ Asia/Shanghai
+ Shanghai (China)
+
+
+ Hovd
+ Asia/Hovd
+ Khovd (Mongolia)
+
+
+ Omsk
+ Asia/Omsk
+ Omsk (Russia)
+
+
+ Ashgabat
+ Asia/Ashgabat
+ Ashgabat (Turkmenistan)
+
+
+ Yerevan
+ Asia/Yerevan
+ Yerevan (Armenia)
+
+
+ Moscow
+ Europe/Moscow
+ Moscow (Russia)
+
+
+ Tel Aviv
+ Asia/Jerusalem
+ Tel Aviv (Israel)
+
+
+ Dublin
+ Europe/Dublin
+ Dublin (Ireland)
+
+
+ London
+ Europe/London
+ London (United Kingdom)
+
+
+ Praia
+ Atlantic/Cape_Verde
+ Praia (Cape Verde)
+
+
+ Montevideo
+ America/Montevideo
+ Montevideo (Uruguay)
+
+
+ Brasília
+ America/Sao_Paulo
+ Brasília (Brazil)
+
+
+ Stanley
+ Atlantic/Stanley
+ Stanley (Falkland Islands)
+
+
+ Bogotá
+ America/Bogota
+ Bogotá (Colombia)
+
+
+ Easter Island
+ Pacific/Easter
+ Easter Island (Chile)
+
+
+ Salt Lake City
+ America/Denver
+ Salt Lake City (United States)
+
+
+ Los Angeles
+ America/Los_Angeles
+ Los Angeles (United States)
+
+
+ Anchorage
+ America/Anchorage
+ Anchorage (United States)
+
+
+ Adak
+ America/Adak
+ Adak (United States)
+
+
+ Pago Pago
+ Pacific/Pago-Pago
+ Pago Pago (American Samoa)
+
+
\ No newline at end of file
diff --git a/frameworks/intl/etc/timezone/supported_locales.xml b/frameworks/intl/etc/timezone/supported_locales.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b11654556d6e242ed76f0af611f24a88d2586cc3
--- /dev/null
+++ b/frameworks/intl/etc/timezone/supported_locales.xml
@@ -0,0 +1,18 @@
+
+
+
+ - en-Latn
+ - zh-Hans
+
\ No newline at end of file
diff --git a/frameworks/intl/etc/timezone/zh-Hans.xml b/frameworks/intl/etc/timezone/zh-Hans.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a1b37241ba116413ed505deb9c411be83f7feadd
--- /dev/null
+++ b/frameworks/intl/etc/timezone/zh-Hans.xml
@@ -0,0 +1,136 @@
+
+
+
+
+ Auckland
+ Pacific/Auckland
+ 奥克兰 (新西兰)
+
+
+ Magadan
+ Asia/Magadan
+ 马加丹 (俄罗斯)
+
+
+ Lord Howe Island
+ Australia/Lord_Howe
+ 豪勋爵岛 (澳大利亚)
+
+
+ Tokyo
+ Asia/Tokyo
+ 东京 (日本)
+
+
+ Shanghai
+ Asia/Shanghai
+ 上海 (中国)
+
+
+ Hovd
+ Asia/Hovd
+ 科布多 (蒙古)
+
+
+ Omsk
+ Asia/Omsk
+ 鄂木斯克 (俄罗斯)
+
+
+ Ashgabat
+ Asia/Ashgabat
+ 阿什哈巴德 (土库曼斯坦)
+
+
+ Yerevan
+ Asia/Yerevan
+ 埃里温 (亚美尼亚)
+
+
+ Moscow
+ Europe/Moscow
+ 莫斯科 (俄罗斯)
+
+
+ Tel Aviv
+ Asia/Jerusalem
+ 特拉维夫 (以色列)
+
+
+ Dublin
+ Europe/Dublin
+ 都柏林 (爱尔兰)
+
+
+ London
+ Europe/London
+ 伦敦 (英国)
+
+
+ Praia
+ Atlantic/Cape_Verde
+ 普拉亚 (佛得角)
+
+
+ Montevideo
+ America/Montevideo
+ 蒙得维的亚 (乌拉圭)
+
+
+ Brasília
+ America/Sao_Paulo
+ 巴西利亚 (巴西)
+
+
+ Stanley
+ Atlantic/Stanley
+ 史丹利 (福克兰群岛)
+
+
+ Bogotá
+ America/Bogota
+ 波哥大 (哥伦比亚)
+
+
+ Easter Island
+ Pacific/Easter
+ 复活节岛 (智利)
+
+
+ Salt Lake City
+ America/Denver
+ 盐湖城 (美国)
+
+
+ Los Angeles
+ America/Los_Angeles
+ 洛杉矶 (美国)
+
+
+ Anchorage
+ America/Anchorage
+ 安克雷奇 (美国)
+
+
+ Adak
+ America/Adak
+ 埃达克 (美国)
+
+
+ Pago Pago
+ Pacific/Pago-Pago
+ 帕果-帕果 (美属萨摩耶)
+
+
\ No newline at end of file
diff --git a/frameworks/intl/include/i18n_timezone.h b/frameworks/intl/include/i18n_timezone.h
index d1e31ce1e14a38eeddc45181ac5fc06ecf6b607f..1caa9d5bf8009ebde9a777b4d91e7fda079103a9 100644
--- a/frameworks/intl/include/i18n_timezone.h
+++ b/frameworks/intl/include/i18n_timezone.h
@@ -15,7 +15,10 @@
#ifndef OHOS_GLOBAL_I18N_TIMEZONE_H
#define OHOS_GLOBAL_I18N_TIMEZONE_H
+#include