ICU-10942 Time Zone data loading, merge from branch.

X-SVN-Rev: 36342
This commit is contained in:
Andy Heninger 2014-09-04 01:07:38 +00:00
parent 8830b79326
commit 746aadf44a
12 changed files with 9591 additions and 4 deletions

4
.gitattributes vendored
View file

@ -339,9 +339,13 @@ icu4c/source/test/perf/utrie2perf/utrie2perf.vcxproj -text
icu4c/source/test/testdata/TestFont1.otf -text
icu4c/source/test/testdata/importtest.bin -text
icu4c/source/test/testdata/iscii.bin -text
icu4c/source/test/testdata/metaZones.txt -text
icu4c/source/test/testdata/old_e_testtypes.res -text
icu4c/source/test/testdata/old_l_testtypes.res -text
icu4c/source/test/testdata/timezoneTypes.txt -text
icu4c/source/test/testdata/uni-text.bin -text
icu4c/source/test/testdata/windowsZones.txt -text
icu4c/source/test/testdata/zoneinfo64.txt -text
icu4c/source/tools/ctestfw/ctestfw.vcxproj -text
icu4c/source/tools/ctestfw/ctestfw.vcxproj.filters -text
icu4c/source/tools/genbrk/genbrk.vcxproj -text

View file

@ -52,6 +52,7 @@
#include "cstring.h"
#include "locmap.h"
#include "ucln_cmn.h"
#include "charstr.h"
/* Include standard headers. */
#include <stdio.h>
@ -150,6 +151,8 @@
# define HAVE_GETTIMEOFDAY 0
#endif
U_NAMESPACE_USE
/* Define the extension for data files, again... */
#define DATA_TYPE "dat"
@ -1113,6 +1116,8 @@ uprv_tzname(int n)
static icu::UInitOnce gDataDirInitOnce = U_INITONCE_INITIALIZER;
static char *gDataDirectory = NULL;
UInitOnce gTimeZoneFilesInitOnce = U_INITONCE_INITIALIZER;
static CharString *gTimeZoneFilesDirectory = NULL;
#if U_POSIX_LOCALE || U_PLATFORM_USES_ONLY_WIN32_API
static char *gCorrectedPOSIXLocale = NULL; /* Heap allocated */
@ -1126,6 +1131,10 @@ static UBool U_CALLCONV putil_cleanup(void)
gDataDirectory = NULL;
gDataDirInitOnce.reset();
delete gTimeZoneFilesDirectory;
gTimeZoneFilesDirectory = NULL;
gTimeZoneFilesInitOnce.reset();
#if U_POSIX_LOCALE || U_PLATFORM_USES_ONLY_WIN32_API
if (gCorrectedPOSIXLocale) {
uprv_free(gCorrectedPOSIXLocale);
@ -1285,6 +1294,61 @@ u_getDataDirectory(void) {
return gDataDirectory;
}
static void setTimeZoneFilesDir(const char *path, UErrorCode &status) {
if (U_FAILURE(status)) {
return;
}
gTimeZoneFilesDirectory->clear();
gTimeZoneFilesDirectory->append(path, status);
#if (U_FILE_SEP_CHAR != U_FILE_ALT_SEP_CHAR)
char *p = gTimeZoneFilesDirectory->data();
while (p = uprv_strchr(p, U_FILE_ALT_SEP_CHAR)) {
*p = U_FILE_SEP_CHAR;
}
#endif
}
#define TO_STRING(x) TO_STRING_2(x)
#define TO_STRING_2(x) #x
static void U_CALLCONV TimeZoneDataDirInitFn(UErrorCode &status) {
U_ASSERT(gTimeZoneFilesDirectory == NULL);
ucln_common_registerCleanup(UCLN_COMMON_PUTIL, putil_cleanup);
gTimeZoneFilesDirectory = new CharString();
if (gTimeZoneFilesDirectory == NULL) {
status = U_MEMORY_ALLOCATION_ERROR;
return;
}
const char *dir = getenv("ICU_TIMEZONE_FILES_DIR");
#if defined(U_TIMEZONE_FILES_DIR)
if (dir == NULL) {
dir = TO_STRING(U_TIMEZONE_FILES_DIR);
}
#endif
if (dir == NULL) {
dir = "";
}
setTimeZoneFilesDir(dir, status);
}
U_CAPI const char * U_EXPORT2
u_getTimeZoneFilesDirectory(UErrorCode *status) {
umtx_initOnce(gTimeZoneFilesInitOnce, &TimeZoneDataDirInitFn, *status);
return U_SUCCESS(*status) ? gTimeZoneFilesDirectory->data() : "";
}
U_CAPI void U_EXPORT2
u_setTimeZoneFilesDirectory(const char *path, UErrorCode *status) {
umtx_initOnce(gTimeZoneFilesInitOnce, &TimeZoneDataDirInitFn, *status);
setTimeZoneFilesDir(path, *status);
// Note: this function does some extra churn, first setting based on the
// environment, then immediately replacing with the value passed in.
// The logic is simpler that way, and performance shouldn't be an issue.
}
#if U_POSIX_LOCALE
/* A helper function used by uprv_getPOSIXIDForDefaultLocale and
* uprv_getPOSIXIDForDefaultCodepage. Returns the posix locale id for

View file

@ -1064,6 +1064,17 @@ static UDataMemory *doLoadFromCommonData(UBool isICUData, const char * /*pkgName
}
}
/*
* Identify the Time Zone resources that are subject to special override data loading.
*/
static UBool isTimeZoneFile(const char *name, const char *type) {
return ((uprv_strcmp(type, "res") == 0) &&
(uprv_strcmp(name, "zoneinfo64") == 0 ||
uprv_strcmp(name, "timezoneTypes") == 0 ||
uprv_strcmp(name, "windowsZones") == 0 ||
uprv_strcmp(name, "metaZones") == 0));
}
/*
* A note on the ownership of Mapped Memory
*
@ -1232,6 +1243,21 @@ doOpenChoice(const char *path, const char *type, const char *name,
/* End of dealing with a null basename */
dataPath = u_getDataDirectory();
/**** Time zone individual files override */
if (isTimeZoneFile(name, type) && isICUData) {
const char *tzFilesDir = u_getTimeZoneFilesDirectory(pErrorCode);
if (tzFilesDir[0] != 0) {
#ifdef UDATA_DEBUG
fprintf(stderr, "Trying Time Zone Files directory = %s\n", tzFilesDir);
#endif
retVal = doLoadFromIndividualFiles(/* pkgName.data() */ "", tzFilesDir, tocEntryPathSuffix,
/* path */ "", type, name, isAcceptable, context, &subErrorCode, pErrorCode);
if((retVal != NULL) || U_FAILURE(*pErrorCode)) {
return retVal;
}
}
}
/**** COMMON PACKAGE - only if packages are first. */
if(gDataFileAccess == UDATA_PACKAGES_FIRST) {
#ifdef UDATA_DEBUG

View file

@ -66,6 +66,7 @@
*/
U_STABLE const char* U_EXPORT2 u_getDataDirectory(void);
/**
* Set the ICU data directory.
* The data directory is where common format ICU data files (.dat files)
@ -87,6 +88,27 @@ U_STABLE const char* U_EXPORT2 u_getDataDirectory(void);
*/
U_STABLE void U_EXPORT2 u_setDataDirectory(const char *directory);
/**
* Return the time zone files override directory, or an empty string if
* no directory was specified. Certain time zone resources will be preferrentially
* loaded from individual files in this directory.
*
* @return the time zone data override directory.
* @internal
*/
U_INTERNAL const char * U_EXPORT2 u_getTimeZoneFilesDirectory(UErrorCode *status);
/**
* Set the time zone files override directory.
* This function is not thread safe; it must not be called concurrently with
* u_getTimeZoneFilesDirectory() or any other use of ICU time zone functions.
* This function should only be called before using any ICU service that
* will access the time zone data.
* @internal
*/
U_INTERNAL void U_EXPORT2 u_setTimeZoneFilesDirectory(const char *path, UErrorCode *status);
/**
* @{
* Filesystem file and path separator characters.

View file

@ -246,6 +246,10 @@
# define UCONFIG_NO_FILE_IO 0
#endif
#if UCONFIG_NO_FILE_IO && defined(U_TIMEZONE_FILES_DIR)
# error Contradictory file io switches in uconfig.h.
#endif
/**
* \def UCONFIG_NO_CONVERSION
* ICU will not completely build with this switch turned on.

View file

@ -16,6 +16,7 @@
#include "unicode/utypes.h"
#include "unicode/putil.h"
#include "unicode/udata.h"
#include "unicode/ucal.h"
#include "unicode/uchar.h"
#include "unicode/ucnv.h"
#include "unicode/ures.h"
@ -70,6 +71,7 @@ static void TestICUDataName(void);
static void PointerTableOfContents(void);
static void SetBadCommonData(void);
static void TestUDataFileAccess(void);
static void TestTZDataDir(void);
void addUDataTest(TestNode** root);
@ -92,6 +94,7 @@ addUDataTest(TestNode** root)
addTest(root, &PointerTableOfContents, "udatatst/PointerTableOfContents" );
addTest(root, &SetBadCommonData, "udatatst/SetBadCommonData" );
addTest(root, &TestUDataFileAccess, "udatatst/TestUDataFileAccess" );
addTest(root, &TestTZDataDir, "udatatst/TestTZDataDir" );
}
#if 0
@ -1811,3 +1814,44 @@ static void SetBadCommonData(void) {
}
}
// Check the override loading of time zone .res files from a specified path
//
// Hand testing notes:
// 1. Run this test with the environment variable set. The following should induce faiures:
// ICU_TIMEZONE_FILES_DIR=../testdata/out/build LD_LIBRARY_PATH=../../lib:../../stubdata:../../tools/ctestfw:$LD_LIBRARY_PATH ./cintltst /udatatst/TestTZDataDir
// 2. Build ICU with with U_TIMEZONE_FILES_DIR defined. This should also induce failures.
// CPPFLAGS=-DU_TIMEZONE_FILES_DIR\=`pwd`/test/testdata/out/testdata ./runConfigureICU Linux
// make check
static void TestTZDataDir(void) {
UErrorCode status = U_ZERO_ERROR;
const char *tzDataVersion;
const char *testDataPath;
// Verify that default ICU time zone data version is something newer than 2014a.
tzDataVersion = ucal_getTZDataVersion(&status);
// printf("tz data version is %s\n", tzDataVersion);
if (strcmp("2014a", tzDataVersion) == 0) {
log_err("File %s:%d - expected something newer than time zone data 2014a.\n", __FILE__, __LINE__, tzDataVersion);
}
testDataPath = loadTestData(&status);
// The path produced by loadTestData() will look something like
// whatever/.../testdata/out/testdata
// The test data puts an old (2014a) version of the time zone data there.
// Switch ICU to the testdata version of zoneinfo64.res, which is verison 2014a.
ctest_resetICU();
u_setTimeZoneFilesDirectory(testDataPath, &status);
tzDataVersion = ucal_getTZDataVersion(&status);
if (strcmp("2014a", tzDataVersion) != 0) {
log_err("File %s:%d - expected \"2014a\"; actual \"%s\"\n", __FILE__, __LINE__, tzDataVersion);
}
ctest_resetICU(); // Return ICU to using its standard tz data.
tzDataVersion = ucal_getTZDataVersion(&status);
// printf("tz data version is %s\n", tzDataVersion);
if (strcmp("2014a", tzDataVersion) == 0) {
log_err("File %s:%d - expected something newer than time zone data 2014a.\n", __FILE__, __LINE__, tzDataVersion);
}
}

View file

@ -1,6 +1,6 @@
#******************************************************************************
#
# Copyright (C) 1998-2012, International Business Machines
# Copyright (C) 1998-2014, International Business Machines
# Corporation and others. All Rights Reserved.
#
#******************************************************************************
@ -140,10 +140,10 @@ include $(TESTSRCDATADIR)/tstfiles.mk
-include $(TESTSRCDATADIR)/tstlocal.mk
# TEST_RES_SOURCE comes from tstfiles.mk
TEST_RES = $(TEST_RES_SOURCE) $(TEST_RES_LOCAL) casing.txt mc.txt root.txt sh.txt sh_YU.txt te.txt te_IN.txt te_IN_REVISED.txt testtypes.txt testaliases.txt testempty.txt structLocale.txt idna_rules.txt conversion.txt icuio.txt testtable32.txt
TEST_RES = $(TEST_RES_SOURCE) $(TEST_RES_LOCAL) casing.txt mc.txt root.txt sh.txt sh_YU.txt te.txt te_IN.txt te_IN_REVISED.txt testtypes.txt testaliases.txt testempty.txt structLocale.txt idna_rules.txt conversion.txt icuio.txt testtable32.txt metaZones.txt timezoneTypes.txt windowsZones.txt zoneinfo64.txt
TEST_RES_FILES=$(TEST_RES:%.txt=$(TESTBUILDDIR)/%.res) $(TESTBUILDDIR)/iscii.res $(TESTBUILDDIR)/old_l_testtypes.res $(TESTBUILDDIR)/old_e_testtypes.res
ALL_TEST_FILES = $(TEST_DAT_FILES) $(TEST_SPP_FILES) $(TEST_BRK_FILES) $(TEST_CNV_FILES) $(TEST_NRM_FILES) $(TEST_RES_FILES) $(TESTOUTDIR)/$(TESTDT)/nam.typ
ALL_TEST_FILES = $(TEST_DAT_FILES) $(TEST_SPP_FILES) $(TEST_BRK_FILES) $(TEST_CNV_FILES) $(TEST_NRM_FILES) $(TEST_RES_FILES) $(TESTOUTDIR)/$(TESTDT)/nam.typ $(TESTOUTDIR)/$(TESTDT)/zoneinfo64.res
# list
@ -215,6 +215,8 @@ $(TESTBUILDDIR)/old_l_testtypes.res: $(TESTSRCDATADIR)/old_l_testtypes.res
cp $< $@
$(TESTBUILDDIR)/old_e_testtypes.res: $(TESTSRCDATADIR)/old_e_testtypes.res
cp $< $@
$(TESTOUTDIR)/$(TESTDT)/zoneinfo64.res: $(TESTBUILDDIR)/zoneinfo64.res
cp $< $@
testdata: build-dir $(ALL_TEST_FILES) $(UNPACKAGEDTESTDATA)

4212
icu4c/source/test/testdata/metaZones.txt vendored Normal file

File diff suppressed because it is too large Load diff

View file

@ -28,11 +28,12 @@ ALL : "$(TESTDATAOUT)\testdata.dat"
TEST_RES_FILES = $(TEST_RES_SOURCE:.txt=.res)
"$(TESTDATAOUT)\testdata.dat" : $(TEST_RES_FILES) "$(TESTDATABLD)\casing.res" "$(TESTDATABLD)\conversion.res" "$(TESTDATABLD)\icuio.res" "$(TESTDATABLD)\mc.res" "$(TESTDATABLD)\structLocale.res" "$(TESTDATABLD)\root.res" "$(TESTDATABLD)\sh.res" "$(TESTDATABLD)\sh_YU.res" "$(TESTDATABLD)\te.res" "$(TESTDATABLD)\te_IN.res" "$(TESTDATABLD)\te_IN_REVISED.res" "$(TESTDATABLD)\testaliases.res" "$(TESTDATABLD)\testtypes.res" "$(TESTDATABLD)\testempty.res" "$(TESTDATABLD)\iscii.res" "$(TESTDATABLD)\idna_rules.res" "$(TESTDATABLD)\test.icu" "$(TESTDATABLD)\testtable32.res" "$(TESTDATABLD)\test1.cnv" "$(TESTDATABLD)\test1bmp.cnv" "$(TESTDATABLD)\test2.cnv" "$(TESTDATABLD)\test3.cnv" "$(TESTDATABLD)\test4.cnv" "$(TESTDATABLD)\test4x.cnv" "$(TESTDATABLD)\test5.cnv" "$(TESTDATABLD)\ibm9027.cnv" "$(TESTDATABLD)\nfscsi.spp" "$(TESTDATABLD)\nfscss.spp" "$(TESTDATABLD)\nfscis.spp" "$(TESTDATABLD)\nfsmxs.spp" "$(TESTDATABLD)\nfsmxp.spp" "$(TESTDATABLD)\testnorm.nrm"
"$(TESTDATAOUT)\testdata.dat" : $(TEST_RES_FILES) "$(TESTDATABLD)\casing.res" "$(TESTDATABLD)\conversion.res" "$(TESTDATABLD)\icuio.res" "$(TESTDATABLD)\mc.res" "$(TESTDATABLD)\structLocale.res" "$(TESTDATABLD)\root.res" "$(TESTDATABLD)\sh.res" "$(TESTDATABLD)\sh_YU.res" "$(TESTDATABLD)\te.res" "$(TESTDATABLD)\te_IN.res" "$(TESTDATABLD)\te_IN_REVISED.res" "$(TESTDATABLD)\testaliases.res" "$(TESTDATABLD)\testtypes.res" "$(TESTDATABLD)\testempty.res" "$(TESTDATABLD)\iscii.res" "$(TESTDATABLD)\idna_rules.res" "$(TESTDATABLD)\test.icu" "$(TESTDATABLD)\testtable32.res" "$(TESTDATABLD)\test1.cnv" "$(TESTDATABLD)\test1bmp.cnv" "$(TESTDATABLD)\test2.cnv" "$(TESTDATABLD)\test3.cnv" "$(TESTDATABLD)\test4.cnv" "$(TESTDATABLD)\test4x.cnv" "$(TESTDATABLD)\test5.cnv" "$(TESTDATABLD)\ibm9027.cnv" "$(TESTDATABLD)\nfscsi.spp" "$(TESTDATABLD)\nfscss.spp" "$(TESTDATABLD)\nfscis.spp" "$(TESTDATABLD)\nfsmxs.spp" "$(TESTDATABLD)\nfsmxp.spp" "$(TESTDATABLD)\testnorm.nrm" "$(TESTDATABLD)\zoneinfo64.res"
@echo Building test data
@copy "$(TESTDATABLD)\te.res" "$(TESTDATAOUT)\$(TESTDT)\nam.typ"
@copy "$(TESTDATA)\old_l_testtypes.res" "$(TESTDATABLD)"
@copy "$(TESTDATA)\old_e_testtypes.res" "$(TESTDATABLD)"
@copy "$(TESTDATABLD)\zoneinfo64.res" "$(TESTDATAOUT)\$(TESTDT)"
"$(ICUPBIN)\pkgdata" -f -v -m common -c -p"$(TESTPKG)" -d "$(TESTDATAOUT)" -T "$(TESTDATABLD)" -s "$(TESTDATABLD)" <<
casing.res
conversion.res

View file

@ -0,0 +1,593 @@
// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/bcp47/timezone.xml
// *
// ***************************************************************************
timezoneTypes:table(nofallback){
typeAlias{
timezone{
"Africa:Asmara"{"Africa/Asmera"}
"Africa:Timbuktu"{"Africa/Bamako"}
"America:Argentina:Buenos_Aires"{"America/Buenos_Aires"}
"America:Argentina:Catamarca"{"America/Catamarca"}
"America:Argentina:ComodRivadavia"{"America/Catamarca"}
"America:Argentina:Cordoba"{"America/Cordoba"}
"America:Argentina:Jujuy"{"America/Jujuy"}
"America:Argentina:Mendoza"{"America/Mendoza"}
"America:Atikokan"{"America/Coral_Harbour"}
"America:Atka"{"America/Adak"}
"America:Ensenada"{"America/Tijuana"}
"America:Fort_Wayne"{"America/Indianapolis"}
"America:Indiana:Indianapolis"{"America/Indianapolis"}
"America:Kentucky:Louisville"{"America/Louisville"}
"America:Knox_IN"{"America/Indiana/Knox"}
"America:Porto_Acre"{"America/Rio_Branco"}
"America:Rosario"{"America/Cordoba"}
"America:Virgin"{"America/St_Thomas"}
"Asia:Ashkhabad"{"Asia/Ashgabat"}
"Asia:Chungking"{"Asia/Chongqing"}
"Asia:Dacca"{"Asia/Dhaka"}
"Asia:Ho_Chi_Minh"{"Asia/Saigon"}
"Asia:Istanbul"{"Europe/Istanbul"}
"Asia:Kathmandu"{"Asia/Katmandu"}
"Asia:Kolkata"{"Asia/Calcutta"}
"Asia:Macao"{"Asia/Macau"}
"Asia:Tel_Aviv"{"Asia/Jerusalem"}
"Asia:Thimbu"{"Asia/Thimphu"}
"Asia:Ujung_Pandang"{"Asia/Makassar"}
"Asia:Ulan_Bator"{"Asia/Ulaanbaatar"}
"Atlantic:Faroe"{"Atlantic/Faeroe"}
"Atlantic:Jan_Mayen"{"Arctic/Longyearbyen"}
"Australia:ACT"{"Australia/Sydney"}
"Australia:Canberra"{"Australia/Sydney"}
"Australia:LHI"{"Australia/Lord_Howe"}
"Australia:NSW"{"Australia/Sydney"}
"Australia:North"{"Australia/Darwin"}
"Australia:Queensland"{"Australia/Brisbane"}
"Australia:South"{"Australia/Adelaide"}
"Australia:Tasmania"{"Australia/Hobart"}
"Australia:Victoria"{"Australia/Melbourne"}
"Australia:West"{"Australia/Perth"}
"Australia:Yancowinna"{"Australia/Broken_Hill"}
"Brazil:Acre"{"America/Rio_Branco"}
"Brazil:DeNoronha"{"America/Noronha"}
"Brazil:East"{"America/Sao_Paulo"}
"Brazil:West"{"America/Manaus"}
"Canada:Atlantic"{"America/Halifax"}
"Canada:Central"{"America/Winnipeg"}
"Canada:East-Saskatchewan"{"America/Regina"}
"Canada:Eastern"{"America/Toronto"}
"Canada:Mountain"{"America/Edmonton"}
"Canada:Newfoundland"{"America/St_Johns"}
"Canada:Pacific"{"America/Vancouver"}
"Canada:Saskatchewan"{"America/Regina"}
"Canada:Yukon"{"America/Whitehorse"}
"Chile:Continental"{"America/Santiago"}
"Chile:EasterIsland"{"Pacific/Easter"}
"Etc:GMT+0"{"Etc/GMT"}
"Etc:GMT-0"{"Etc/GMT"}
"Etc:GMT0"{"Etc/GMT"}
"Etc:Greenwich"{"Etc/GMT"}
"Etc:UCT"{"Etc/GMT"}
"Etc:UTC"{"Etc/GMT"}
"Etc:Universal"{"Etc/GMT"}
"Etc:Zulu"{"Etc/GMT"}
"Europe:Belfast"{"Europe/London"}
"Europe:Nicosia"{"Asia/Nicosia"}
"Europe:Tiraspol"{"Europe/Chisinau"}
"Mexico:BajaNorte"{"America/Tijuana"}
"Mexico:BajaSur"{"America/Mazatlan"}
"Mexico:General"{"America/Mexico_City"}
"Pacific:Chuuk"{"Pacific/Truk"}
"Pacific:Pohnpei"{"Pacific/Ponape"}
"Pacific:Samoa"{"Pacific/Pago_Pago"}
"Pacific:Yap"{"Pacific/Truk"}
"US:Alaska"{"America/Anchorage"}
"US:Aleutian"{"America/Adak"}
"US:Arizona"{"America/Phoenix"}
"US:Central"{"America/Chicago"}
"US:East-Indiana"{"America/Indianapolis"}
"US:Eastern"{"America/New_York"}
"US:Hawaii"{"Pacific/Honolulu"}
"US:Indiana-Starke"{"America/Indiana/Knox"}
"US:Michigan"{"America/Detroit"}
"US:Mountain"{"America/Denver"}
"US:Pacific"{"America/Los_Angeles"}
"US:Pacific-New"{"America/Los_Angeles"}
"US:Samoa"{"Pacific/Pago_Pago"}
Cuba{"America/Havana"}
EST{"Etc/GMT+5"}
Egypt{"Africa/Cairo"}
Eire{"Europe/Dublin"}
GB{"Europe/London"}
GB-Eire{"Europe/London"}
GMT{"Etc/GMT"}
GMT+0{"Etc/GMT"}
GMT-0{"Etc/GMT"}
GMT0{"Etc/GMT"}
Greenwich{"Etc/GMT"}
HST{"Etc/GMT+10"}
Hongkong{"Asia/Hong_Kong"}
Iceland{"Atlantic/Reykjavik"}
Iran{"Asia/Tehran"}
Israel{"Asia/Jerusalem"}
Jamaica{"America/Jamaica"}
Japan{"Asia/Tokyo"}
Kwajalein{"Pacific/Kwajalein"}
Libya{"Africa/Tripoli"}
MST{"Etc/GMT+7"}
NZ{"Pacific/Auckland"}
NZ-CHAT{"Pacific/Chatham"}
Navajo{"America/Shiprock"}
PRC{"Asia/Shanghai"}
Poland{"Europe/Warsaw"}
Portugal{"Europe/Lisbon"}
ROC{"Asia/Taipei"}
ROK{"Asia/Seoul"}
Singapore{"Asia/Singapore"}
Turkey{"Europe/Istanbul"}
UCT{"Etc/GMT"}
UTC{"Etc/GMT"}
Universal{"Etc/GMT"}
W-SU{"Europe/Moscow"}
Zulu{"Etc/GMT"}
}
}
typeMap{
timezone{
"Africa:Abidjan"{"ciabj"}
"Africa:Accra"{"ghacc"}
"Africa:Addis_Ababa"{"etadd"}
"Africa:Algiers"{"dzalg"}
"Africa:Asmera"{"erasm"}
"Africa:Bamako"{"mlbko"}
"Africa:Bangui"{"cfbgf"}
"Africa:Banjul"{"gmbjl"}
"Africa:Bissau"{"gwoxb"}
"Africa:Blantyre"{"mwblz"}
"Africa:Brazzaville"{"cgbzv"}
"Africa:Bujumbura"{"bibjm"}
"Africa:Cairo"{"egcai"}
"Africa:Casablanca"{"macas"}
"Africa:Ceuta"{"esceu"}
"Africa:Conakry"{"gncky"}
"Africa:Dakar"{"sndkr"}
"Africa:Dar_es_Salaam"{"tzdar"}
"Africa:Djibouti"{"djjib"}
"Africa:Douala"{"cmdla"}
"Africa:El_Aaiun"{"eheai"}
"Africa:Freetown"{"slfna"}
"Africa:Gaborone"{"bwgbe"}
"Africa:Harare"{"zwhre"}
"Africa:Johannesburg"{"zajnb"}
"Africa:Juba"{"ssjub"}
"Africa:Kampala"{"ugkla"}
"Africa:Khartoum"{"sdkrt"}
"Africa:Kigali"{"rwkgl"}
"Africa:Kinshasa"{"cdfih"}
"Africa:Lagos"{"nglos"}
"Africa:Libreville"{"galbv"}
"Africa:Lome"{"tglfw"}
"Africa:Luanda"{"aolad"}
"Africa:Lubumbashi"{"cdfbm"}
"Africa:Lusaka"{"zmlun"}
"Africa:Malabo"{"gqssg"}
"Africa:Maputo"{"mzmpm"}
"Africa:Maseru"{"lsmsu"}
"Africa:Mbabane"{"szqmn"}
"Africa:Mogadishu"{"somgq"}
"Africa:Monrovia"{"lrmlw"}
"Africa:Nairobi"{"kenbo"}
"Africa:Ndjamena"{"tdndj"}
"Africa:Niamey"{"nenim"}
"Africa:Nouakchott"{"mrnkc"}
"Africa:Ouagadougou"{"bfoua"}
"Africa:Porto-Novo"{"bjptn"}
"Africa:Sao_Tome"{"sttms"}
"Africa:Tripoli"{"lytip"}
"Africa:Tunis"{"tntun"}
"Africa:Windhoek"{"nawdh"}
"America:Adak"{"usadk"}
"America:Anchorage"{"usanc"}
"America:Anguilla"{"aiaxa"}
"America:Antigua"{"aganu"}
"America:Araguaina"{"braux"}
"America:Argentina:La_Rioja"{"arirj"}
"America:Argentina:Rio_Gallegos"{"arrgl"}
"America:Argentina:Salta"{"arsla"}
"America:Argentina:San_Juan"{"aruaq"}
"America:Argentina:San_Luis"{"arluq"}
"America:Argentina:Tucuman"{"artuc"}
"America:Argentina:Ushuaia"{"arush"}
"America:Aruba"{"awaua"}
"America:Asuncion"{"pyasu"}
"America:Bahia"{"brssa"}
"America:Bahia_Banderas"{"mxpvr"}
"America:Barbados"{"bbbgi"}
"America:Belem"{"brbel"}
"America:Belize"{"bzbze"}
"America:Blanc-Sablon"{"caybx"}
"America:Boa_Vista"{"brbvb"}
"America:Bogota"{"cobog"}
"America:Boise"{"usboi"}
"America:Buenos_Aires"{"arbue"}
"America:Cambridge_Bay"{"caycb"}
"America:Campo_Grande"{"brcgr"}
"America:Cancun"{"mxcun"}
"America:Caracas"{"veccs"}
"America:Catamarca"{"arctc"}
"America:Cayenne"{"gfcay"}
"America:Cayman"{"kygec"}
"America:Chicago"{"uschi"}
"America:Chihuahua"{"mxchi"}
"America:Coral_Harbour"{"cayzs"}
"America:Cordoba"{"arcor"}
"America:Costa_Rica"{"crsjo"}
"America:Creston"{"cacfq"}
"America:Cuiaba"{"brcgb"}
"America:Curacao"{"ancur"}
"America:Danmarkshavn"{"gldkshvn"}
"America:Dawson"{"cayda"}
"America:Dawson_Creek"{"caydq"}
"America:Denver"{"usden"}
"America:Detroit"{"usdet"}
"America:Dominica"{"dmdom"}
"America:Edmonton"{"caedm"}
"America:Eirunepe"{"brern"}
"America:El_Salvador"{"svsal"}
"America:Fortaleza"{"brfor"}
"America:Glace_Bay"{"caglb"}
"America:Godthab"{"glgoh"}
"America:Goose_Bay"{"cagoo"}
"America:Grand_Turk"{"tcgdt"}
"America:Grenada"{"gdgnd"}
"America:Guadeloupe"{"gpbbr"}
"America:Guatemala"{"gtgua"}
"America:Guayaquil"{"ecgye"}
"America:Guyana"{"gygeo"}
"America:Halifax"{"cahal"}
"America:Havana"{"cuhav"}
"America:Hermosillo"{"mxhmo"}
"America:Indiana:Knox"{"usknx"}
"America:Indiana:Marengo"{"usaeg"}
"America:Indiana:Petersburg"{"uswsq"}
"America:Indiana:Tell_City"{"ustel"}
"America:Indiana:Vevay"{"usinvev"}
"America:Indiana:Vincennes"{"usoea"}
"America:Indiana:Winamac"{"uswlz"}
"America:Indianapolis"{"usind"}
"America:Inuvik"{"cayev"}
"America:Iqaluit"{"caiql"}
"America:Jamaica"{"jmkin"}
"America:Jujuy"{"arjuj"}
"America:Juneau"{"usjnu"}
"America:Kentucky:Monticello"{"usmoc"}
"America:Kralendijk"{"bqkra"}
"America:La_Paz"{"bolpb"}
"America:Lima"{"pelim"}
"America:Los_Angeles"{"uslax"}
"America:Louisville"{"uslui"}
"America:Lower_Princes"{"sxphi"}
"America:Maceio"{"brmcz"}
"America:Managua"{"nimga"}
"America:Manaus"{"brmao"}
"America:Marigot"{"gpmsb"}
"America:Martinique"{"mqfdf"}
"America:Matamoros"{"mxmam"}
"America:Mazatlan"{"mxmzt"}
"America:Mendoza"{"armdz"}
"America:Menominee"{"usmnm"}
"America:Merida"{"mxmid"}
"America:Metlakatla"{"usmtm"}
"America:Mexico_City"{"mxmex"}
"America:Miquelon"{"pmmqc"}
"America:Moncton"{"camon"}
"America:Monterrey"{"mxmty"}
"America:Montevideo"{"uymvd"}
"America:Montreal"{"camtr"}
"America:Montserrat"{"msmni"}
"America:Nassau"{"bsnas"}
"America:New_York"{"usnyc"}
"America:Nipigon"{"canpg"}
"America:Nome"{"usome"}
"America:Noronha"{"brfen"}
"America:North_Dakota:Beulah"{"usxul"}
"America:North_Dakota:Center"{"usndcnt"}
"America:North_Dakota:New_Salem"{"usndnsl"}
"America:Ojinaga"{"mxoji"}
"America:Panama"{"papty"}
"America:Pangnirtung"{"capnt"}
"America:Paramaribo"{"srpbm"}
"America:Phoenix"{"usphx"}
"America:Port-au-Prince"{"htpap"}
"America:Port_of_Spain"{"ttpos"}
"America:Porto_Velho"{"brpvh"}
"America:Puerto_Rico"{"prsju"}
"America:Rainy_River"{"caffs"}
"America:Rankin_Inlet"{"cayek"}
"America:Recife"{"brrec"}
"America:Regina"{"careg"}
"America:Resolute"{"careb"}
"America:Rio_Branco"{"brrbr"}
"America:Santa_Isabel"{"mxstis"}
"America:Santarem"{"brstm"}
"America:Santiago"{"clscl"}
"America:Santo_Domingo"{"dosdq"}
"America:Sao_Paulo"{"brsao"}
"America:Scoresbysund"{"globy"}
"America:Shiprock"{"usnavajo"}
"America:Sitka"{"ussit"}
"America:St_Barthelemy"{"gpsbh"}
"America:St_Johns"{"casjf"}
"America:St_Kitts"{"knbas"}
"America:St_Lucia"{"lccas"}
"America:St_Thomas"{"vistt"}
"America:St_Vincent"{"vcsvd"}
"America:Swift_Current"{"cayyn"}
"America:Tegucigalpa"{"hntgu"}
"America:Thule"{"glthu"}
"America:Thunder_Bay"{"cathu"}
"America:Tijuana"{"mxtij"}
"America:Toronto"{"cator"}
"America:Tortola"{"vgtov"}
"America:Vancouver"{"cavan"}
"America:Whitehorse"{"cayxy"}
"America:Winnipeg"{"cawnp"}
"America:Yakutat"{"usyak"}
"America:Yellowknife"{"cayzf"}
"Antarctica:Casey"{"aqcas"}
"Antarctica:Davis"{"aqdav"}
"Antarctica:DumontDUrville"{"aqddu"}
"Antarctica:Macquarie"{"aumqi"}
"Antarctica:Mawson"{"aqmaw"}
"Antarctica:McMurdo"{"aqmcm"}
"Antarctica:Palmer"{"aqplm"}
"Antarctica:Rothera"{"aqrot"}
"Antarctica:South_Pole"{"aqams"}
"Antarctica:Syowa"{"aqsyw"}
"Antarctica:Vostok"{"aqvos"}
"Arctic:Longyearbyen"{"sjlyr"}
"Asia:Aden"{"yeade"}
"Asia:Almaty"{"kzala"}
"Asia:Amman"{"joamm"}
"Asia:Anadyr"{"rudyr"}
"Asia:Aqtau"{"kzaau"}
"Asia:Aqtobe"{"kzakx"}
"Asia:Ashgabat"{"tmasb"}
"Asia:Baghdad"{"iqbgw"}
"Asia:Bahrain"{"bhbah"}
"Asia:Baku"{"azbak"}
"Asia:Bangkok"{"thbkk"}
"Asia:Beirut"{"lbbey"}
"Asia:Bishkek"{"kgfru"}
"Asia:Brunei"{"bnbwn"}
"Asia:Calcutta"{"inccu"}
"Asia:Choibalsan"{"mncoq"}
"Asia:Chongqing"{"cnckg"}
"Asia:Colombo"{"lkcmb"}
"Asia:Damascus"{"sydam"}
"Asia:Dhaka"{"bddac"}
"Asia:Dili"{"tldil"}
"Asia:Dubai"{"aedxb"}
"Asia:Dushanbe"{"tjdyu"}
"Asia:Gaza"{"gaza"}
"Asia:Harbin"{"cnhrb"}
"Asia:Hebron"{"hebron"}
"Asia:Hong_Kong"{"hkhkg"}
"Asia:Hovd"{"mnhvd"}
"Asia:Irkutsk"{"ruikt"}
"Asia:Jakarta"{"idjkt"}
"Asia:Jayapura"{"iddjj"}
"Asia:Jerusalem"{"jeruslm"}
"Asia:Kabul"{"afkbl"}
"Asia:Kamchatka"{"rupkc"}
"Asia:Karachi"{"pkkhi"}
"Asia:Kashgar"{"cnkhg"}
"Asia:Katmandu"{"npktm"}
"Asia:Khandyga"{"rukhndg"}
"Asia:Krasnoyarsk"{"rukra"}
"Asia:Kuala_Lumpur"{"mykul"}
"Asia:Kuching"{"mykch"}
"Asia:Kuwait"{"kwkwi"}
"Asia:Macau"{"momfm"}
"Asia:Magadan"{"rugdx"}
"Asia:Makassar"{"idmak"}
"Asia:Manila"{"phmnl"}
"Asia:Muscat"{"ommct"}
"Asia:Nicosia"{"cynic"}
"Asia:Novokuznetsk"{"runoz"}
"Asia:Novosibirsk"{"ruovb"}
"Asia:Omsk"{"ruoms"}
"Asia:Oral"{"kzura"}
"Asia:Phnom_Penh"{"khpnh"}
"Asia:Pontianak"{"idpnk"}
"Asia:Pyongyang"{"kpfnj"}
"Asia:Qatar"{"qadoh"}
"Asia:Qyzylorda"{"kzkzo"}
"Asia:Rangoon"{"mmrgn"}
"Asia:Riyadh"{"saruh"}
"Asia:Saigon"{"vnsgn"}
"Asia:Sakhalin"{"ruuus"}
"Asia:Samarkand"{"uzskd"}
"Asia:Seoul"{"krsel"}
"Asia:Shanghai"{"cnsha"}
"Asia:Singapore"{"sgsin"}
"Asia:Taipei"{"twtpe"}
"Asia:Tashkent"{"uztas"}
"Asia:Tbilisi"{"getbs"}
"Asia:Tehran"{"irthr"}
"Asia:Thimphu"{"btthi"}
"Asia:Tokyo"{"jptyo"}
"Asia:Ulaanbaatar"{"mnuln"}
"Asia:Urumqi"{"cnurc"}
"Asia:Ust-Nera"{"ruunera"}
"Asia:Vientiane"{"lavte"}
"Asia:Vladivostok"{"ruvvo"}
"Asia:Yakutsk"{"ruyks"}
"Asia:Yekaterinburg"{"ruyek"}
"Asia:Yerevan"{"amevn"}
"Atlantic:Azores"{"ptpdl"}
"Atlantic:Bermuda"{"bmbda"}
"Atlantic:Canary"{"eslpa"}
"Atlantic:Cape_Verde"{"cvrai"}
"Atlantic:Faeroe"{"fotho"}
"Atlantic:Madeira"{"ptfnc"}
"Atlantic:Reykjavik"{"isrey"}
"Atlantic:South_Georgia"{"gsgrv"}
"Atlantic:St_Helena"{"shshn"}
"Atlantic:Stanley"{"fkpsy"}
"Australia:Adelaide"{"auadl"}
"Australia:Brisbane"{"aubne"}
"Australia:Broken_Hill"{"aubhq"}
"Australia:Currie"{"aukns"}
"Australia:Darwin"{"audrw"}
"Australia:Eucla"{"aueuc"}
"Australia:Hobart"{"auhba"}
"Australia:Lindeman"{"auldc"}
"Australia:Lord_Howe"{"auldh"}
"Australia:Melbourne"{"aumel"}
"Australia:Perth"{"auper"}
"Australia:Sydney"{"ausyd"}
"Etc:GMT"{"utc"}
"Etc:GMT+1"{"utcw01"}
"Etc:GMT+10"{"utcw10"}
"Etc:GMT+11"{"utcw11"}
"Etc:GMT+12"{"utcw12"}
"Etc:GMT+2"{"utcw02"}
"Etc:GMT+3"{"utcw03"}
"Etc:GMT+4"{"utcw04"}
"Etc:GMT+5"{"utcw05"}
"Etc:GMT+6"{"utcw06"}
"Etc:GMT+7"{"utcw07"}
"Etc:GMT+8"{"utcw08"}
"Etc:GMT+9"{"utcw09"}
"Etc:GMT-1"{"utce01"}
"Etc:GMT-10"{"utce10"}
"Etc:GMT-11"{"utce11"}
"Etc:GMT-12"{"utce12"}
"Etc:GMT-13"{"utce13"}
"Etc:GMT-14"{"utce14"}
"Etc:GMT-2"{"utce02"}
"Etc:GMT-3"{"utce03"}
"Etc:GMT-4"{"utce04"}
"Etc:GMT-5"{"utce05"}
"Etc:GMT-6"{"utce06"}
"Etc:GMT-7"{"utce07"}
"Etc:GMT-8"{"utce08"}
"Etc:GMT-9"{"utce09"}
"Etc:Unknown"{"unk"}
"Europe:Amsterdam"{"nlams"}
"Europe:Andorra"{"adalv"}
"Europe:Athens"{"grath"}
"Europe:Belgrade"{"rsbeg"}
"Europe:Berlin"{"deber"}
"Europe:Bratislava"{"skbts"}
"Europe:Brussels"{"bebru"}
"Europe:Bucharest"{"robuh"}
"Europe:Budapest"{"hubud"}
"Europe:Busingen"{"debsngn"}
"Europe:Chisinau"{"mdkiv"}
"Europe:Copenhagen"{"dkcph"}
"Europe:Dublin"{"iedub"}
"Europe:Gibraltar"{"gigib"}
"Europe:Guernsey"{"gggci"}
"Europe:Helsinki"{"fihel"}
"Europe:Isle_of_Man"{"imdgs"}
"Europe:Istanbul"{"trist"}
"Europe:Jersey"{"jesth"}
"Europe:Kaliningrad"{"rukgd"}
"Europe:Kiev"{"uaiev"}
"Europe:Lisbon"{"ptlis"}
"Europe:Ljubljana"{"silju"}
"Europe:London"{"gblon"}
"Europe:Luxembourg"{"lulux"}
"Europe:Madrid"{"esmad"}
"Europe:Malta"{"mtmla"}
"Europe:Mariehamn"{"fimhq"}
"Europe:Minsk"{"bymsq"}
"Europe:Monaco"{"mcmon"}
"Europe:Moscow"{"rumow"}
"Europe:Oslo"{"noosl"}
"Europe:Paris"{"frpar"}
"Europe:Podgorica"{"metgd"}
"Europe:Prague"{"czprg"}
"Europe:Riga"{"lvrix"}
"Europe:Rome"{"itrom"}
"Europe:Samara"{"rukuf"}
"Europe:San_Marino"{"smsai"}
"Europe:Sarajevo"{"basjj"}
"Europe:Simferopol"{"uasip"}
"Europe:Skopje"{"mkskp"}
"Europe:Sofia"{"bgsof"}
"Europe:Stockholm"{"sesto"}
"Europe:Tallinn"{"eetll"}
"Europe:Tirane"{"altia"}
"Europe:Uzhgorod"{"uauzh"}
"Europe:Vaduz"{"livdz"}
"Europe:Vatican"{"vavat"}
"Europe:Vienna"{"atvie"}
"Europe:Vilnius"{"ltvno"}
"Europe:Volgograd"{"ruvog"}
"Europe:Warsaw"{"plwaw"}
"Europe:Zagreb"{"hrzag"}
"Europe:Zaporozhye"{"uaozh"}
"Europe:Zurich"{"chzrh"}
"Indian:Antananarivo"{"mgtnr"}
"Indian:Chagos"{"iodga"}
"Indian:Christmas"{"cxxch"}
"Indian:Cocos"{"cccck"}
"Indian:Comoro"{"kmyva"}
"Indian:Kerguelen"{"tfpfr"}
"Indian:Mahe"{"scmaw"}
"Indian:Maldives"{"mvmle"}
"Indian:Mauritius"{"muplu"}
"Indian:Mayotte"{"ytmam"}
"Indian:Reunion"{"rereu"}
"Pacific:Apia"{"wsapw"}
"Pacific:Auckland"{"nzakl"}
"Pacific:Chatham"{"nzcht"}
"Pacific:Easter"{"clipc"}
"Pacific:Efate"{"vuvli"}
"Pacific:Enderbury"{"kipho"}
"Pacific:Fakaofo"{"tkfko"}
"Pacific:Fiji"{"fjsuv"}
"Pacific:Funafuti"{"tvfun"}
"Pacific:Galapagos"{"ecgps"}
"Pacific:Gambier"{"pfgmr"}
"Pacific:Guadalcanal"{"sbhir"}
"Pacific:Guam"{"gugum"}
"Pacific:Honolulu"{"ushnl"}
"Pacific:Johnston"{"umjon"}
"Pacific:Kiritimati"{"kicxi"}
"Pacific:Kosrae"{"fmksa"}
"Pacific:Kwajalein"{"mhkwa"}
"Pacific:Majuro"{"mhmaj"}
"Pacific:Marquesas"{"pfnhv"}
"Pacific:Midway"{"ummdy"}
"Pacific:Nauru"{"nrinu"}
"Pacific:Niue"{"nuiue"}
"Pacific:Norfolk"{"nfnlk"}
"Pacific:Noumea"{"ncnou"}
"Pacific:Pago_Pago"{"asppg"}
"Pacific:Palau"{"pwror"}
"Pacific:Pitcairn"{"pnpcn"}
"Pacific:Ponape"{"fmpni"}
"Pacific:Port_Moresby"{"pgpom"}
"Pacific:Rarotonga"{"ckrar"}
"Pacific:Saipan"{"mpspn"}
"Pacific:Tahiti"{"pfppt"}
"Pacific:Tarawa"{"kitrw"}
"Pacific:Tongatapu"{"totbu"}
"Pacific:Truk"{"fmtkk"}
"Pacific:Wake"{"umawk"}
"Pacific:Wallis"{"wfmau"}
CST6CDT{"cst6cdt"}
EST5EDT{"est5edt"}
MST7MDT{"mst7mdt"}
PST8PDT{"pst8pdt"}
}
}
}

View file

@ -0,0 +1,676 @@
// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/windowsZones.xml
// *
// ***************************************************************************
windowsZones:table(nofallback){
mapTimezones{
"AUS Central Standard Time"{
001{"Australia/Darwin"}
AU{"Australia/Darwin"}
}
"AUS Eastern Standard Time"{
001{"Australia/Sydney"}
AU{"Australia/Sydney Australia/Melbourne"}
}
"Afghanistan Standard Time"{
001{"Asia/Kabul"}
AF{"Asia/Kabul"}
}
"Alaskan Standard Time"{
001{"America/Anchorage"}
US{
"America/Anchorage America/Juneau America/Nome America/Sitka America/"
"Yakutat"
}
}
"Arab Standard Time"{
001{"Asia/Riyadh"}
BH{"Asia/Bahrain"}
KW{"Asia/Kuwait"}
QA{"Asia/Qatar"}
SA{"Asia/Riyadh"}
YE{"Asia/Aden"}
}
"Arabian Standard Time"{
001{"Asia/Dubai"}
AE{"Asia/Dubai"}
OM{"Asia/Muscat"}
ZZ{"Etc/GMT-4"}
}
"Arabic Standard Time"{
001{"Asia/Baghdad"}
IQ{"Asia/Baghdad"}
}
"Argentina Standard Time"{
001{"America/Buenos_Aires"}
AR{
"America/Buenos_Aires America/Argentina/La_Rioja America/Argentina/Ri"
"o_Gallegos America/Argentina/Salta America/Argentina/San_Juan Americ"
"a/Argentina/San_Luis America/Argentina/Tucuman America/Argentina/Ush"
"uaia America/Catamarca America/Cordoba America/Jujuy America/Mendoza"
}
}
"Atlantic Standard Time"{
001{"America/Halifax"}
BM{"Atlantic/Bermuda"}
CA{"America/Halifax America/Glace_Bay America/Goose_Bay America/Moncton"}
GL{"America/Thule"}
}
"Azerbaijan Standard Time"{
001{"Asia/Baku"}
AZ{"Asia/Baku"}
}
"Azores Standard Time"{
001{"Atlantic/Azores"}
GL{"America/Scoresbysund"}
PT{"Atlantic/Azores"}
}
"Bahia Standard Time"{
001{"America/Bahia"}
BR{"America/Bahia"}
}
"Bangladesh Standard Time"{
001{"Asia/Dhaka"}
BD{"Asia/Dhaka"}
BT{"Asia/Thimphu"}
}
"Canada Central Standard Time"{
001{"America/Regina"}
CA{"America/Regina America/Swift_Current"}
}
"Cape Verde Standard Time"{
001{"Atlantic/Cape_Verde"}
CV{"Atlantic/Cape_Verde"}
ZZ{"Etc/GMT+1"}
}
"Caucasus Standard Time"{
001{"Asia/Yerevan"}
AM{"Asia/Yerevan"}
}
"Cen. Australia Standard Time"{
001{"Australia/Adelaide"}
AU{"Australia/Adelaide Australia/Broken_Hill"}
}
"Central America Standard Time"{
001{"America/Guatemala"}
BZ{"America/Belize"}
CR{"America/Costa_Rica"}
EC{"Pacific/Galapagos"}
GT{"America/Guatemala"}
HN{"America/Tegucigalpa"}
NI{"America/Managua"}
SV{"America/El_Salvador"}
ZZ{"Etc/GMT+6"}
}
"Central Asia Standard Time"{
001{"Asia/Almaty"}
AQ{"Antarctica/Vostok"}
IO{"Indian/Chagos"}
KG{"Asia/Bishkek"}
KZ{"Asia/Almaty Asia/Qyzylorda"}
ZZ{"Etc/GMT-6"}
}
"Central Brazilian Standard Time"{
001{"America/Cuiaba"}
BR{"America/Cuiaba America/Campo_Grande"}
}
"Central Europe Standard Time"{
001{"Europe/Budapest"}
AL{"Europe/Tirane"}
CZ{"Europe/Prague"}
HU{"Europe/Budapest"}
ME{"Europe/Podgorica"}
RS{"Europe/Belgrade"}
SI{"Europe/Ljubljana"}
SK{"Europe/Bratislava"}
}
"Central European Standard Time"{
001{"Europe/Warsaw"}
BA{"Europe/Sarajevo"}
HR{"Europe/Zagreb"}
MK{"Europe/Skopje"}
PL{"Europe/Warsaw"}
}
"Central Pacific Standard Time"{
001{"Pacific/Guadalcanal"}
AU{"Antarctica/Macquarie"}
FM{"Pacific/Ponape Pacific/Kosrae"}
NC{"Pacific/Noumea"}
SB{"Pacific/Guadalcanal"}
VU{"Pacific/Efate"}
ZZ{"Etc/GMT-11"}
}
"Central Standard Time (Mexico)"{
001{"America/Mexico_City"}
MX{
"America/Mexico_City America/Bahia_Banderas America/Cancun America/Me"
"rida America/Monterrey"
}
}
"Central Standard Time"{
001{"America/Chicago"}
CA{
"America/Winnipeg America/Rainy_River America/Rankin_Inlet America/Re"
"solute"
}
MX{"America/Matamoros"}
US{
"America/Chicago America/Indiana/Knox America/Indiana/Tell_City Ameri"
"ca/Menominee America/North_Dakota/Beulah America/North_Dakota/Center"
" America/North_Dakota/New_Salem"
}
ZZ{"CST6CDT"}
}
"China Standard Time"{
001{"Asia/Shanghai"}
CN{"Asia/Shanghai Asia/Chongqing Asia/Harbin Asia/Kashgar Asia/Urumqi"}
HK{"Asia/Hong_Kong"}
MO{"Asia/Macau"}
}
"Dateline Standard Time"{
001{"Etc/GMT+12"}
ZZ{"Etc/GMT+12"}
}
"E. Africa Standard Time"{
001{"Africa/Nairobi"}
AQ{"Antarctica/Syowa"}
DJ{"Africa/Djibouti"}
ER{"Africa/Asmera"}
ET{"Africa/Addis_Ababa"}
KE{"Africa/Nairobi"}
KM{"Indian/Comoro"}
MG{"Indian/Antananarivo"}
SD{"Africa/Khartoum"}
SO{"Africa/Mogadishu"}
SS{"Africa/Juba"}
TZ{"Africa/Dar_es_Salaam"}
UG{"Africa/Kampala"}
YT{"Indian/Mayotte"}
ZZ{"Etc/GMT-3"}
}
"E. Australia Standard Time"{
001{"Australia/Brisbane"}
AU{"Australia/Brisbane Australia/Lindeman"}
}
"E. South America Standard Time"{
001{"America/Sao_Paulo"}
BR{"America/Sao_Paulo"}
}
"Eastern Standard Time"{
001{"America/New_York"}
BS{"America/Nassau"}
CA{
"America/Toronto America/Iqaluit America/Montreal America/Nipigon Ame"
"rica/Pangnirtung America/Thunder_Bay"
}
CU{"America/Havana"}
HT{"America/Port-au-Prince"}
TC{"America/Grand_Turk"}
US{
"America/New_York America/Detroit America/Indiana/Petersburg America/"
"Indiana/Vincennes America/Indiana/Winamac America/Kentucky/Monticell"
"o America/Louisville"
}
ZZ{"EST5EDT"}
}
"Egypt Standard Time"{
001{"Africa/Cairo"}
EG{"Africa/Cairo"}
}
"Ekaterinburg Standard Time"{
001{"Asia/Yekaterinburg"}
RU{"Asia/Yekaterinburg"}
}
"FLE Standard Time"{
001{"Europe/Kiev"}
AX{"Europe/Mariehamn"}
BG{"Europe/Sofia"}
EE{"Europe/Tallinn"}
FI{"Europe/Helsinki"}
LT{"Europe/Vilnius"}
LV{"Europe/Riga"}
UA{"Europe/Kiev Europe/Simferopol Europe/Uzhgorod Europe/Zaporozhye"}
}
"Fiji Standard Time"{
001{"Pacific/Fiji"}
FJ{"Pacific/Fiji"}
}
"GMT Standard Time"{
001{"Europe/London"}
ES{"Atlantic/Canary"}
FO{"Atlantic/Faeroe"}
GB{"Europe/London"}
GG{"Europe/Guernsey"}
IE{"Europe/Dublin"}
IM{"Europe/Isle_of_Man"}
JE{"Europe/Jersey"}
PT{"Europe/Lisbon Atlantic/Madeira"}
}
"GTB Standard Time"{
001{"Europe/Bucharest"}
CY{"Asia/Nicosia"}
GR{"Europe/Athens"}
MD{"Europe/Chisinau"}
RO{"Europe/Bucharest"}
}
"Georgian Standard Time"{
001{"Asia/Tbilisi"}
GE{"Asia/Tbilisi"}
}
"Greenland Standard Time"{
001{"America/Godthab"}
GL{"America/Godthab"}
}
"Greenwich Standard Time"{
001{"Atlantic/Reykjavik"}
BF{"Africa/Ouagadougou"}
CI{"Africa/Abidjan"}
GH{"Africa/Accra"}
GM{"Africa/Banjul"}
GN{"Africa/Conakry"}
GW{"Africa/Bissau"}
IS{"Atlantic/Reykjavik"}
LR{"Africa/Monrovia"}
ML{"Africa/Bamako"}
MR{"Africa/Nouakchott"}
SH{"Atlantic/St_Helena"}
SL{"Africa/Freetown"}
SN{"Africa/Dakar"}
ST{"Africa/Sao_Tome"}
TG{"Africa/Lome"}
}
"Hawaiian Standard Time"{
001{"Pacific/Honolulu"}
CK{"Pacific/Rarotonga"}
PF{"Pacific/Tahiti"}
UM{"Pacific/Johnston"}
US{"Pacific/Honolulu"}
ZZ{"Etc/GMT+10"}
}
"India Standard Time"{
001{"Asia/Calcutta"}
IN{"Asia/Calcutta"}
}
"Iran Standard Time"{
001{"Asia/Tehran"}
IR{"Asia/Tehran"}
}
"Israel Standard Time"{
001{"Asia/Jerusalem"}
IL{"Asia/Jerusalem"}
}
"Jordan Standard Time"{
001{"Asia/Amman"}
JO{"Asia/Amman"}
}
"Kaliningrad Standard Time"{
001{"Europe/Kaliningrad"}
BY{"Europe/Minsk"}
RU{"Europe/Kaliningrad"}
}
"Korea Standard Time"{
001{"Asia/Seoul"}
KP{"Asia/Pyongyang"}
KR{"Asia/Seoul"}
}
"Libya Standard Time"{
001{"Africa/Tripoli"}
LY{"Africa/Tripoli"}
}
"Magadan Standard Time"{
001{"Asia/Magadan"}
RU{"Asia/Magadan Asia/Anadyr Asia/Kamchatka"}
}
"Mauritius Standard Time"{
001{"Indian/Mauritius"}
MU{"Indian/Mauritius"}
RE{"Indian/Reunion"}
SC{"Indian/Mahe"}
}
"Middle East Standard Time"{
001{"Asia/Beirut"}
LB{"Asia/Beirut"}
}
"Montevideo Standard Time"{
001{"America/Montevideo"}
UY{"America/Montevideo"}
}
"Morocco Standard Time"{
001{"Africa/Casablanca"}
EH{"Africa/El_Aaiun"}
MA{"Africa/Casablanca"}
}
"Mountain Standard Time (Mexico)"{
001{"America/Chihuahua"}
MX{"America/Chihuahua America/Mazatlan"}
}
"Mountain Standard Time"{
001{"America/Denver"}
CA{
"America/Edmonton America/Cambridge_Bay America/Inuvik America/Yellow"
"knife"
}
MX{"America/Ojinaga"}
US{"America/Denver America/Boise America/Shiprock"}
ZZ{"MST7MDT"}
}
"Myanmar Standard Time"{
001{"Asia/Rangoon"}
CC{"Indian/Cocos"}
MM{"Asia/Rangoon"}
}
"N. Central Asia Standard Time"{
001{"Asia/Novosibirsk"}
RU{"Asia/Novosibirsk Asia/Novokuznetsk Asia/Omsk"}
}
"Namibia Standard Time"{
001{"Africa/Windhoek"}
NA{"Africa/Windhoek"}
}
"Nepal Standard Time"{
001{"Asia/Katmandu"}
NP{"Asia/Katmandu"}
}
"New Zealand Standard Time"{
001{"Pacific/Auckland"}
AQ{"Antarctica/McMurdo"}
NZ{"Pacific/Auckland Antarctica/South_Pole"}
}
"Newfoundland Standard Time"{
001{"America/St_Johns"}
CA{"America/St_Johns"}
}
"North Asia East Standard Time"{
001{"Asia/Irkutsk"}
RU{"Asia/Irkutsk"}
}
"North Asia Standard Time"{
001{"Asia/Krasnoyarsk"}
RU{"Asia/Krasnoyarsk"}
}
"Pacific SA Standard Time"{
001{"America/Santiago"}
AQ{"Antarctica/Palmer"}
CL{"America/Santiago"}
}
"Pacific Standard Time (Mexico)"{
001{"America/Santa_Isabel"}
MX{"America/Santa_Isabel"}
}
"Pacific Standard Time"{
001{"America/Los_Angeles"}
CA{"America/Vancouver America/Dawson America/Whitehorse"}
MX{"America/Tijuana"}
US{"America/Los_Angeles"}
ZZ{"PST8PDT"}
}
"Pakistan Standard Time"{
001{"Asia/Karachi"}
PK{"Asia/Karachi"}
}
"Paraguay Standard Time"{
001{"America/Asuncion"}
PY{"America/Asuncion"}
}
"Romance Standard Time"{
001{"Europe/Paris"}
BE{"Europe/Brussels"}
DK{"Europe/Copenhagen"}
ES{"Europe/Madrid Africa/Ceuta"}
FR{"Europe/Paris"}
}
"Russian Standard Time"{
001{"Europe/Moscow"}
RU{"Europe/Moscow Europe/Samara Europe/Volgograd"}
}
"SA Eastern Standard Time"{
001{"America/Cayenne"}
AQ{"Antarctica/Rothera"}
BR{
"America/Fortaleza America/Araguaina America/Belem America/Maceio Ame"
"rica/Recife America/Santarem"
}
FK{"Atlantic/Stanley"}
GF{"America/Cayenne"}
SR{"America/Paramaribo"}
ZZ{"Etc/GMT+3"}
}
"SA Pacific Standard Time"{
001{"America/Bogota"}
BR{"America/Rio_Branco America/Eirunepe"}
CA{"America/Coral_Harbour"}
CO{"America/Bogota"}
EC{"America/Guayaquil"}
JM{"America/Jamaica"}
KY{"America/Cayman"}
PA{"America/Panama"}
PE{"America/Lima"}
ZZ{"Etc/GMT+5"}
}
"SA Western Standard Time"{
001{"America/La_Paz"}
AG{"America/Antigua"}
AI{"America/Anguilla"}
AW{"America/Aruba"}
BB{"America/Barbados"}
BL{"America/St_Barthelemy"}
BO{"America/La_Paz"}
BQ{"America/Kralendijk"}
BR{"America/Manaus America/Boa_Vista America/Porto_Velho"}
CA{"America/Blanc-Sablon"}
CW{"America/Curacao"}
DM{"America/Dominica"}
DO{"America/Santo_Domingo"}
GD{"America/Grenada"}
GP{"America/Guadeloupe"}
GY{"America/Guyana"}
KN{"America/St_Kitts"}
LC{"America/St_Lucia"}
MF{"America/Marigot"}
MQ{"America/Martinique"}
MS{"America/Montserrat"}
PR{"America/Puerto_Rico"}
SX{"America/Lower_Princes"}
TT{"America/Port_of_Spain"}
VC{"America/St_Vincent"}
VG{"America/Tortola"}
VI{"America/St_Thomas"}
ZZ{"Etc/GMT+4"}
}
"SE Asia Standard Time"{
001{"Asia/Bangkok"}
AQ{"Antarctica/Davis"}
CX{"Indian/Christmas"}
ID{"Asia/Jakarta Asia/Pontianak"}
KH{"Asia/Phnom_Penh"}
LA{"Asia/Vientiane"}
MN{"Asia/Hovd"}
TH{"Asia/Bangkok"}
VN{"Asia/Saigon"}
ZZ{"Etc/GMT-7"}
}
"Samoa Standard Time"{
001{"Pacific/Apia"}
WS{"Pacific/Apia"}
}
"Singapore Standard Time"{
001{"Asia/Singapore"}
BN{"Asia/Brunei"}
ID{"Asia/Makassar"}
MY{"Asia/Kuala_Lumpur Asia/Kuching"}
PH{"Asia/Manila"}
SG{"Asia/Singapore"}
ZZ{"Etc/GMT-8"}
}
"South Africa Standard Time"{
001{"Africa/Johannesburg"}
BI{"Africa/Bujumbura"}
BW{"Africa/Gaborone"}
CD{"Africa/Lubumbashi"}
LS{"Africa/Maseru"}
MW{"Africa/Blantyre"}
MZ{"Africa/Maputo"}
RW{"Africa/Kigali"}
SZ{"Africa/Mbabane"}
ZA{"Africa/Johannesburg"}
ZM{"Africa/Lusaka"}
ZW{"Africa/Harare"}
ZZ{"Etc/GMT-2"}
}
"Sri Lanka Standard Time"{
001{"Asia/Colombo"}
LK{"Asia/Colombo"}
}
"Syria Standard Time"{
001{"Asia/Damascus"}
SY{"Asia/Damascus"}
}
"Taipei Standard Time"{
001{"Asia/Taipei"}
TW{"Asia/Taipei"}
}
"Tasmania Standard Time"{
001{"Australia/Hobart"}
AU{"Australia/Hobart Australia/Currie"}
}
"Tokyo Standard Time"{
001{"Asia/Tokyo"}
ID{"Asia/Jayapura"}
JP{"Asia/Tokyo"}
PW{"Pacific/Palau"}
TL{"Asia/Dili"}
ZZ{"Etc/GMT-9"}
}
"Tonga Standard Time"{
001{"Pacific/Tongatapu"}
KI{"Pacific/Enderbury"}
TK{"Pacific/Fakaofo"}
TO{"Pacific/Tongatapu"}
ZZ{"Etc/GMT-13"}
}
"Turkey Standard Time"{
001{"Europe/Istanbul"}
TR{"Europe/Istanbul"}
}
"US Eastern Standard Time"{
001{"America/Indianapolis"}
US{"America/Indianapolis America/Indiana/Marengo America/Indiana/Vevay"}
}
"US Mountain Standard Time"{
001{"America/Phoenix"}
CA{"America/Dawson_Creek America/Creston"}
MX{"America/Hermosillo"}
US{"America/Phoenix"}
ZZ{"Etc/GMT+7"}
}
"UTC"{
001{"Etc/GMT"}
GL{"America/Danmarkshavn"}
ZZ{"Etc/GMT"}
}
"UTC+12"{
001{"Etc/GMT-12"}
KI{"Pacific/Tarawa"}
MH{"Pacific/Majuro Pacific/Kwajalein"}
NR{"Pacific/Nauru"}
TV{"Pacific/Funafuti"}
UM{"Pacific/Wake"}
WF{"Pacific/Wallis"}
ZZ{"Etc/GMT-12"}
}
"UTC-02"{
001{"Etc/GMT+2"}
BR{"America/Noronha"}
GS{"Atlantic/South_Georgia"}
ZZ{"Etc/GMT+2"}
}
"UTC-11"{
001{"Etc/GMT+11"}
AS{"Pacific/Pago_Pago"}
NU{"Pacific/Niue"}
UM{"Pacific/Midway"}
ZZ{"Etc/GMT+11"}
}
"Ulaanbaatar Standard Time"{
001{"Asia/Ulaanbaatar"}
MN{"Asia/Ulaanbaatar Asia/Choibalsan"}
}
"Venezuela Standard Time"{
001{"America/Caracas"}
VE{"America/Caracas"}
}
"Vladivostok Standard Time"{
001{"Asia/Vladivostok"}
RU{"Asia/Vladivostok Asia/Sakhalin Asia/Ust-Nera"}
}
"W. Australia Standard Time"{
001{"Australia/Perth"}
AQ{"Antarctica/Casey"}
AU{"Australia/Perth"}
}
"W. Central Africa Standard Time"{
001{"Africa/Lagos"}
AO{"Africa/Luanda"}
BJ{"Africa/Porto-Novo"}
CD{"Africa/Kinshasa"}
CF{"Africa/Bangui"}
CG{"Africa/Brazzaville"}
CM{"Africa/Douala"}
DZ{"Africa/Algiers"}
GA{"Africa/Libreville"}
GQ{"Africa/Malabo"}
NE{"Africa/Niamey"}
NG{"Africa/Lagos"}
TD{"Africa/Ndjamena"}
TN{"Africa/Tunis"}
ZZ{"Etc/GMT-1"}
}
"W. Europe Standard Time"{
001{"Europe/Berlin"}
AD{"Europe/Andorra"}
AT{"Europe/Vienna"}
CH{"Europe/Zurich"}
DE{"Europe/Berlin Europe/Busingen"}
GI{"Europe/Gibraltar"}
IT{"Europe/Rome"}
LI{"Europe/Vaduz"}
LU{"Europe/Luxembourg"}
MC{"Europe/Monaco"}
MT{"Europe/Malta"}
NL{"Europe/Amsterdam"}
NO{"Europe/Oslo"}
SE{"Europe/Stockholm"}
SJ{"Arctic/Longyearbyen"}
SM{"Europe/San_Marino"}
VA{"Europe/Vatican"}
}
"West Asia Standard Time"{
001{"Asia/Tashkent"}
AQ{"Antarctica/Mawson"}
KZ{"Asia/Oral Asia/Aqtau Asia/Aqtobe"}
MV{"Indian/Maldives"}
TF{"Indian/Kerguelen"}
TJ{"Asia/Dushanbe"}
TM{"Asia/Ashgabat"}
UZ{"Asia/Tashkent Asia/Samarkand"}
ZZ{"Etc/GMT-5"}
}
"West Pacific Standard Time"{
001{"Pacific/Port_Moresby"}
AQ{"Antarctica/DumontDUrville"}
FM{"Pacific/Truk"}
GU{"Pacific/Guam"}
MP{"Pacific/Saipan"}
PG{"Pacific/Port_Moresby"}
ZZ{"Etc/GMT-10"}
}
"Yakutsk Standard Time"{
001{"Asia/Yakutsk"}
RU{"Asia/Yakutsk Asia/Khandyga"}
}
}
}

3939
icu4c/source/test/testdata/zoneinfo64.txt vendored Normal file

File diff suppressed because it is too large Load diff