Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.squarespace.cldr.dates._CalendarFormatter_zh Maven / Gradle / Ivy
//
//
// AUTO-GENERATED CLASS - DO NOT EDIT
//
//
package com.squarespace.cldr.dates;
import com.squarespace.cldr.CLDR;
import java.lang.Override;
import java.lang.String;
import java.lang.StringBuilder;
import java.time.ZonedDateTime;
import java.util.HashMap;
/**
* Locale "zh"
* See http://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table
*/
public class _CalendarFormatter_zh extends CalendarFormatterBase {
public _CalendarFormatter_zh() {
this.bundleId = CLDR.Locale.zh;
this.firstDay = 1;
this.minDays = 1;
this.eras = new FieldVariants(
new String[] {"公元前", "公元"},
new String[] {"公元前", "公元"},
new String[] {},
new String[] {"公元前", "公元"});
this.quartersFormat = new FieldVariants(
new String[] {"1季度", "2季度", "3季度", "4季度"},
new String[] {"1", "2", "3", "4"},
new String[] {},
new String[] {"第一季度", "第二季度", "第三季度", "第四季度"});
this.quartersStandalone = new FieldVariants(
new String[] {"1季度", "2季度", "3季度", "4季度"},
new String[] {"1", "2", "3", "4"},
new String[] {},
new String[] {"第一季度", "第二季度", "第三季度", "第四季度"});
this.monthsFormat = new FieldVariants(
new String[] {"1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"},
new String[] {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"},
new String[] {},
new String[] {"一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"});
this.monthsStandalone = new FieldVariants(
new String[] {"1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"},
new String[] {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"},
new String[] {},
new String[] {"一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"});
this.weekdaysFormat = new FieldVariants(
new String[] {"周日", "周一", "周二", "周三", "周四", "周五", "周六"},
new String[] {"日", "一", "二", "三", "四", "五", "六"},
new String[] {"周日", "周一", "周二", "周三", "周四", "周五", "周六"},
new String[] {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"});
this.weekdaysStandalone = new FieldVariants(
new String[] {"周日", "周一", "周二", "周三", "周四", "周五", "周六"},
new String[] {"日", "一", "二", "三", "四", "五", "六"},
new String[] {"周日", "周一", "周二", "周三", "周四", "周五", "周六"},
new String[] {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"});
this.dayPeriodsFormat = new FieldVariants(
new String[] {"上午", "下午"},
new String[] {"上午", "下午"},
new String[] {},
new String[] {"上午", "下午"});
this.dayPeriodsStandalone = new FieldVariants(
new String[] {"上午", "下午"},
new String[] {"上午", "下午"},
new String[] {},
new String[] {"上午", "下午"});
this.exemplarCities = new HashMap() { {
put("America/Adak", "埃达克");
put("America/Anchorage", "安克雷奇");
put("America/Anguilla", "安圭拉");
put("America/Antigua", "安提瓜");
put("America/Araguaina", "阿拉瓜伊纳");
put("America/Argentina/Rio_Gallegos", "里奥加耶戈斯");
put("America/Argentina/San_Juan", "圣胡安");
put("America/Argentina/Ushuaia", "乌斯怀亚");
put("America/Argentina/La_Rioja", "拉里奥哈");
put("America/Argentina/San_Luis", "圣路易斯");
put("America/Argentina/Salta", "萨尔塔");
put("America/Argentina/Tucuman", "图库曼");
put("America/Aruba", "阿鲁巴");
put("America/Asuncion", "亚松森");
put("America/Bahia", "巴伊亚");
put("America/Bahia_Banderas", "巴伊亚班德拉斯");
put("America/Barbados", "巴巴多斯");
put("America/Belem", "贝伦");
put("America/Belize", "伯利兹");
put("America/Blanc-Sablon", "布兰克萨布隆");
put("America/Boa_Vista", "博阿维斯塔");
put("America/Bogota", "波哥大");
put("America/Boise", "博伊西");
put("America/Buenos_Aires", "布宜诺斯艾利斯");
put("America/Cambridge_Bay", "剑桥湾");
put("America/Campo_Grande", "大坎普");
put("America/Cancun", "坎昆");
put("America/Caracas", "加拉加斯");
put("America/Catamarca", "卡塔马卡");
put("America/Cayenne", "卡宴");
put("America/Cayman", "开曼");
put("America/Chicago", "芝加哥");
put("America/Chihuahua", "奇瓦瓦");
put("America/Coral_Harbour", "阿蒂科肯");
put("America/Cordoba", "科尔多瓦");
put("America/Costa_Rica", "哥斯达黎加");
put("America/Creston", "克雷斯顿");
put("America/Cuiaba", "库亚巴");
put("America/Curacao", "库拉索");
put("America/Danmarkshavn", "丹马沙文");
put("America/Dawson", "道森");
put("America/Dawson_Creek", "道森克里克");
put("America/Denver", "丹佛");
put("America/Detroit", "底特律");
put("America/Dominica", "多米尼加");
put("America/Edmonton", "埃德蒙顿");
put("America/Eirunepe", "依伦尼贝");
put("America/El_Salvador", "萨尔瓦多");
put("America/Fort_Nelson", "纳尔逊堡");
put("America/Fortaleza", "福塔雷萨");
put("America/Glace_Bay", "格莱斯贝");
put("America/Godthab", "戈特霍布");
put("America/Goose_Bay", "古斯湾");
put("America/Grand_Turk", "大特克");
put("America/Grenada", "格林纳达");
put("America/Guadeloupe", "瓜德罗普");
put("America/Guatemala", "危地马拉");
put("America/Guayaquil", "瓜亚基尔");
put("America/Guyana", "圭亚那");
put("America/Halifax", "哈利法克斯");
put("America/Havana", "哈瓦那");
put("America/Hermosillo", "埃莫西约");
put("America/Indiana/Vincennes", "印第安纳州温森斯");
put("America/Indiana/Petersburg", "印第安纳州彼得斯堡");
put("America/Indiana/Tell_City", "印第安纳州特尔城");
put("America/Indiana/Knox", "印第安纳州诺克斯");
put("America/Indiana/Winamac", "印第安纳州威纳马克");
put("America/Indiana/Marengo", "印第安纳州马伦戈");
put("America/Indiana/Vevay", "印第安纳州维维市");
put("America/Indianapolis", "印第安纳波利斯");
put("America/Inuvik", "伊努维克");
put("America/Iqaluit", "伊魁特");
put("America/Jamaica", "牙买加");
put("America/Jujuy", "胡胡伊");
put("America/Juneau", "朱诺");
put("America/Kentucky/Monticello", "肯塔基州蒙蒂塞洛");
put("America/Kralendijk", "克拉伦代克");
put("America/La_Paz", "拉巴斯");
put("America/Lima", "利马");
put("America/Los_Angeles", "洛杉矶");
put("America/Louisville", "路易斯维尔");
put("America/Lower_Princes", "下太子区");
put("America/Maceio", "马塞约");
put("America/Managua", "马那瓜");
put("America/Manaus", "马瑙斯");
put("America/Marigot", "马里戈特");
put("America/Martinique", "马提尼克");
put("America/Matamoros", "马塔莫罗斯");
put("America/Mazatlan", "马萨特兰");
put("America/Mendoza", "门多萨");
put("America/Menominee", "梅诺米尼");
put("America/Merida", "梅里达");
put("America/Metlakatla", "梅特拉卡特拉");
put("America/Mexico_City", "墨西哥城");
put("America/Miquelon", "密克隆");
put("America/Moncton", "蒙克顿");
put("America/Monterrey", "蒙特雷");
put("America/Montevideo", "蒙得维的亚");
put("America/Montserrat", "蒙特塞拉特");
put("America/Nassau", "拿骚");
put("America/New_York", "纽约");
put("America/Nipigon", "尼皮贡");
put("America/Nome", "诺姆");
put("America/Noronha", "洛罗尼亚");
put("America/North_Dakota/Beulah", "北达科他州比尤拉");
put("America/North_Dakota/New_Salem", "北达科他州新塞勒姆");
put("America/North_Dakota/Center", "北达科他州申特");
put("America/Ojinaga", "奥希纳加");
put("America/Panama", "巴拿马");
put("America/Pangnirtung", "旁涅唐");
put("America/Paramaribo", "帕拉马里博");
put("America/Phoenix", "凤凰城");
put("America/Port-au-Prince", "太子港");
put("America/Port_of_Spain", "西班牙港");
put("America/Porto_Velho", "波多韦柳");
put("America/Puerto_Rico", "波多黎各");
put("America/Rainy_River", "雷尼河");
put("America/Rankin_Inlet", "兰今湾");
put("America/Recife", "累西腓");
put("America/Regina", "里贾纳");
put("America/Resolute", "雷索卢特");
put("America/Rio_Branco", "里奥布郎库");
put("America/Santa_Isabel", "圣伊萨贝尔");
put("America/Santarem", "圣塔伦");
put("America/Santiago", "圣地亚哥");
put("America/Santo_Domingo", "圣多明各");
put("America/Sao_Paulo", "圣保罗");
put("America/Scoresbysund", "斯科列斯比桑德");
put("America/Sitka", "锡特卡");
put("America/St_Barthelemy", "圣巴泰勒米岛");
put("America/St_Johns", "圣约翰斯");
put("America/St_Kitts", "圣基茨");
put("America/St_Lucia", "圣卢西亚");
put("America/St_Thomas", "圣托马斯");
put("America/St_Vincent", "圣文森特");
put("America/Swift_Current", "斯威夫特卡伦特");
put("America/Tegucigalpa", "特古西加尔巴");
put("America/Thule", "图勒");
put("America/Thunder_Bay", "桑德贝");
put("America/Tijuana", "蒂华纳");
put("America/Toronto", "多伦多");
put("America/Tortola", "托尔托拉");
put("America/Vancouver", "温哥华");
put("America/Whitehorse", "怀特霍斯");
put("America/Winnipeg", "温尼伯");
put("America/Yakutat", "亚库塔特");
put("America/Yellowknife", "耶洛奈夫");
put("Atlantic/Azores", "亚速尔群岛");
put("Atlantic/Bermuda", "百慕大");
put("Atlantic/Canary", "加那利");
put("Atlantic/Cape_Verde", "佛得角");
put("Atlantic/Faeroe", "法罗");
put("Atlantic/Madeira", "马德拉");
put("Atlantic/Reykjavik", "雷克雅未克");
put("Atlantic/South_Georgia", "南乔治亚");
put("Atlantic/St_Helena", "圣赫勒拿");
put("Atlantic/Stanley", "斯坦利");
put("Europe/Amsterdam", "阿姆斯特丹");
put("Europe/Andorra", "安道尔");
put("Europe/Astrakhan", "阿斯特拉罕");
put("Europe/Athens", "雅典");
put("Europe/Belgrade", "贝尔格莱德");
put("Europe/Berlin", "柏林");
put("Europe/Bratislava", "布拉迪斯拉发");
put("Europe/Brussels", "布鲁塞尔");
put("Europe/Bucharest", "布加勒斯特");
put("Europe/Budapest", "布达佩斯");
put("Europe/Busingen", "布辛根");
put("Europe/Chisinau", "基希讷乌");
put("Europe/Copenhagen", "哥本哈根");
put("Europe/Dublin", "都柏林");
put("Europe/Gibraltar", "直布罗陀");
put("Europe/Guernsey", "根西岛");
put("Europe/Helsinki", "赫尔辛基");
put("Europe/Isle_of_Man", "曼岛");
put("Europe/Istanbul", "伊斯坦布尔");
put("Europe/Jersey", "泽西岛");
put("Europe/Kaliningrad", "加里宁格勒");
put("Europe/Kiev", "基辅");
put("Europe/Kirov", "基洛夫");
put("Europe/Lisbon", "里斯本");
put("Europe/Ljubljana", "卢布尔雅那");
put("Europe/London", "伦敦");
put("Europe/Luxembourg", "卢森堡");
put("Europe/Madrid", "马德里");
put("Europe/Malta", "马耳他");
put("Europe/Mariehamn", "玛丽港");
put("Europe/Minsk", "明斯克");
put("Europe/Monaco", "摩纳哥");
put("Europe/Moscow", "莫斯科");
put("Europe/Oslo", "奥斯陆");
put("Europe/Paris", "巴黎");
put("Europe/Podgorica", "波德戈里察");
put("Europe/Prague", "布拉格");
put("Europe/Riga", "里加");
put("Europe/Rome", "罗马");
put("Europe/Samara", "萨马拉");
put("Europe/San_Marino", "圣马力诺");
put("Europe/Sarajevo", "萨拉热窝");
put("Europe/Simferopol", "辛菲罗波尔");
put("Europe/Skopje", "斯科普里");
put("Europe/Sofia", "索非亚");
put("Europe/Stockholm", "斯德哥尔摩");
put("Europe/Tallinn", "塔林");
put("Europe/Tirane", "地拉那");
put("Europe/Ulyanovsk", "乌里扬诺夫斯克");
put("Europe/Uzhgorod", "乌日哥罗德");
put("Europe/Vaduz", "瓦杜兹");
put("Europe/Vatican", "梵蒂冈");
put("Europe/Vienna", "维也纳");
put("Europe/Vilnius", "维尔纽斯");
put("Europe/Volgograd", "伏尔加格勒");
put("Europe/Warsaw", "华沙");
put("Europe/Zagreb", "萨格勒布");
put("Europe/Zaporozhye", "扎波罗热");
put("Europe/Zurich", "苏黎世");
put("Africa/Abidjan", "阿比让");
put("Africa/Accra", "阿克拉");
put("Africa/Addis_Ababa", "亚的斯亚贝巴");
put("Africa/Algiers", "阿尔及尔");
put("Africa/Asmera", "阿斯马拉");
put("Africa/Bamako", "巴马科");
put("Africa/Bangui", "班吉");
put("Africa/Banjul", "班珠尔");
put("Africa/Bissau", "比绍");
put("Africa/Blantyre", "布兰太尔");
put("Africa/Brazzaville", "布拉柴维尔");
put("Africa/Bujumbura", "布琼布拉");
put("Africa/Cairo", "开罗");
put("Africa/Casablanca", "卡萨布兰卡");
put("Africa/Ceuta", "休达");
put("Africa/Conakry", "科纳克里");
put("Africa/Dakar", "达喀尔");
put("Africa/Dar_es_Salaam", "达累斯萨拉姆");
put("Africa/Djibouti", "吉布提");
put("Africa/Douala", "杜阿拉");
put("Africa/El_Aaiun", "阿尤恩");
put("Africa/Freetown", "弗里敦");
put("Africa/Gaborone", "哈博罗内");
put("Africa/Harare", "哈拉雷");
put("Africa/Johannesburg", "约翰内斯堡");
put("Africa/Juba", "朱巴");
put("Africa/Kampala", "坎帕拉");
put("Africa/Khartoum", "喀土穆");
put("Africa/Kigali", "基加利");
put("Africa/Kinshasa", "金沙萨");
put("Africa/Lagos", "拉各斯");
put("Africa/Libreville", "利伯维尔");
put("Africa/Lome", "洛美");
put("Africa/Luanda", "罗安达");
put("Africa/Lubumbashi", "卢本巴希");
put("Africa/Lusaka", "卢萨卡");
put("Africa/Malabo", "马拉博");
put("Africa/Maputo", "马普托");
put("Africa/Maseru", "马塞卢");
put("Africa/Mbabane", "姆巴巴纳");
put("Africa/Mogadishu", "摩加迪沙");
put("Africa/Monrovia", "蒙罗维亚");
put("Africa/Nairobi", "内罗毕");
put("Africa/Ndjamena", "恩贾梅纳");
put("Africa/Niamey", "尼亚美");
put("Africa/Nouakchott", "努瓦克肖特");
put("Africa/Ouagadougou", "瓦加杜古");
put("Africa/Porto-Novo", "波多诺伏");
put("Africa/Sao_Tome", "圣多美");
put("Africa/Tripoli", "的黎波里");
put("Africa/Tunis", "突尼斯");
put("Africa/Windhoek", "温得和克");
put("Asia/Aden", "亚丁");
put("Asia/Almaty", "阿拉木图");
put("Asia/Amman", "安曼");
put("Asia/Anadyr", "阿纳德尔");
put("Asia/Aqtau", "阿克套");
put("Asia/Aqtobe", "阿克托别");
put("Asia/Ashgabat", "阿什哈巴德");
put("Asia/Baghdad", "巴格达");
put("Asia/Bahrain", "巴林");
put("Asia/Baku", "巴库");
put("Asia/Bangkok", "曼谷");
put("Asia/Barnaul", "巴尔瑙尔");
put("Asia/Beirut", "贝鲁特");
put("Asia/Bishkek", "比什凯克");
put("Asia/Brunei", "文莱");
put("Asia/Calcutta", "加尔各答");
put("Asia/Chita", "赤塔");
put("Asia/Choibalsan", "乔巴山");
put("Asia/Colombo", "科伦坡");
put("Asia/Damascus", "大马士革");
put("Asia/Dhaka", "达卡");
put("Asia/Dili", "帝力");
put("Asia/Dubai", "迪拜");
put("Asia/Dushanbe", "杜尚别");
put("Asia/Gaza", "加沙");
put("Asia/Hebron", "希伯伦");
put("Asia/Hong_Kong", "香港");
put("Asia/Hovd", "科布多");
put("Asia/Irkutsk", "伊尔库茨克");
put("Asia/Jakarta", "雅加达");
put("Asia/Jayapura", "查亚普拉");
put("Asia/Jerusalem", "耶路撒冷");
put("Asia/Kabul", "喀布尔");
put("Asia/Kamchatka", "堪察加");
put("Asia/Karachi", "卡拉奇");
put("Asia/Katmandu", "加德满都");
put("Asia/Khandyga", "汉德加");
put("Asia/Krasnoyarsk", "克拉斯诺亚尔斯克");
put("Asia/Kuala_Lumpur", "吉隆坡");
put("Asia/Kuching", "古晋");
put("Asia/Kuwait", "科威特");
put("Asia/Macau", "澳门");
put("Asia/Magadan", "马加丹");
put("Asia/Makassar", "望加锡");
put("Asia/Manila", "马尼拉");
put("Asia/Muscat", "马斯喀特");
put("Asia/Nicosia", "尼科西亚");
put("Asia/Novokuznetsk", "新库兹涅茨克");
put("Asia/Novosibirsk", "诺沃西比尔斯克");
put("Asia/Omsk", "鄂木斯克");
put("Asia/Oral", "乌拉尔");
put("Asia/Phnom_Penh", "金边");
put("Asia/Pontianak", "坤甸");
put("Asia/Pyongyang", "平壤");
put("Asia/Qatar", "卡塔尔");
put("Asia/Qyzylorda", "克孜洛尔达");
put("Asia/Rangoon", "仰光");
put("Asia/Riyadh", "利雅得");
put("Asia/Saigon", "胡志明市");
put("Asia/Sakhalin", "萨哈林");
put("Asia/Samarkand", "撒马尔罕");
put("Asia/Seoul", "首尔");
put("Asia/Shanghai", "上海");
put("Asia/Singapore", "新加坡");
put("Asia/Srednekolymsk", "中科雷姆斯克");
put("Asia/Taipei", "台北");
put("Asia/Tashkent", "塔什干");
put("Asia/Tbilisi", "第比利斯");
put("Asia/Tehran", "德黑兰");
put("Asia/Thimphu", "廷布");
put("Asia/Tokyo", "东京");
put("Asia/Tomsk", "托木斯克");
put("Asia/Ulaanbaatar", "乌兰巴托");
put("Asia/Urumqi", "乌鲁木齐");
put("Asia/Ust-Nera", "乌斯内拉");
put("Asia/Vientiane", "万象");
put("Asia/Vladivostok", "符拉迪沃斯托克");
put("Asia/Yakutsk", "雅库茨克");
put("Asia/Yekaterinburg", "叶卡捷琳堡");
put("Asia/Yerevan", "埃里温");
put("Indian/Antananarivo", "安塔那那利佛");
put("Indian/Chagos", "查戈斯");
put("Indian/Christmas", "圣诞岛");
put("Indian/Cocos", "可可斯");
put("Indian/Comoro", "科摩罗");
put("Indian/Kerguelen", "凯尔盖朗");
put("Indian/Mahe", "马埃岛");
put("Indian/Maldives", "马尔代夫");
put("Indian/Mauritius", "毛里求斯");
put("Indian/Mayotte", "马约特");
put("Indian/Reunion", "留尼汪");
put("Australia/Adelaide", "阿德莱德");
put("Australia/Brisbane", "布里斯班");
put("Australia/Broken_Hill", "布罗肯希尔");
put("Australia/Currie", "库利");
put("Australia/Darwin", "达尔文");
put("Australia/Eucla", "尤克拉");
put("Australia/Hobart", "霍巴特");
put("Australia/Lindeman", "林德曼");
put("Australia/Lord_Howe", "豪勋爵");
put("Australia/Melbourne", "墨尔本");
put("Australia/Perth", "珀斯");
put("Australia/Sydney", "悉尼");
put("Pacific/Apia", "阿皮亚");
put("Pacific/Auckland", "奥克兰");
put("Pacific/Bougainville", "布干维尔");
put("Pacific/Chatham", "查塔姆");
put("Pacific/Easter", "复活节岛");
put("Pacific/Efate", "埃法特");
put("Pacific/Enderbury", "恩德伯里");
put("Pacific/Fakaofo", "法考福");
put("Pacific/Fiji", "斐济");
put("Pacific/Funafuti", "富纳富提");
put("Pacific/Galapagos", "加拉帕戈斯");
put("Pacific/Gambier", "甘比尔");
put("Pacific/Guadalcanal", "瓜达尔卡纳尔");
put("Pacific/Guam", "关岛");
put("Pacific/Honolulu", "檀香山");
put("Pacific/Johnston", "约翰斯顿");
put("Pacific/Kiritimati", "基里地马地岛");
put("Pacific/Kosrae", "库赛埃");
put("Pacific/Kwajalein", "夸贾林");
put("Pacific/Majuro", "马朱罗");
put("Pacific/Marquesas", "马克萨斯");
put("Pacific/Midway", "中途岛");
put("Pacific/Nauru", "瑙鲁");
put("Pacific/Niue", "纽埃");
put("Pacific/Norfolk", "诺福克");
put("Pacific/Noumea", "努美阿");
put("Pacific/Pago_Pago", "帕果帕果");
put("Pacific/Palau", "帕劳");
put("Pacific/Pitcairn", "皮特凯恩");
put("Pacific/Ponape", "波纳佩岛");
put("Pacific/Port_Moresby", "莫尔兹比港");
put("Pacific/Rarotonga", "拉罗汤加");
put("Pacific/Saipan", "塞班");
put("Pacific/Tahiti", "塔希提");
put("Pacific/Tarawa", "塔拉瓦");
put("Pacific/Tongatapu", "东加塔布");
put("Pacific/Truk", "特鲁克群岛");
put("Pacific/Wake", "威克");
put("Pacific/Wallis", "瓦利斯");
put("Arctic/Longyearbyen", "朗伊尔城");
put("Antarctica/Casey", "卡塞");
put("Antarctica/Davis", "戴维斯");
put("Antarctica/DumontDUrville", "迪蒙迪尔维尔");
put("Antarctica/Macquarie", "麦格理");
put("Antarctica/Mawson", "莫森");
put("Antarctica/McMurdo", "麦克默多");
put("Antarctica/Palmer", "帕默尔");
put("Antarctica/Rothera", "罗瑟拉");
put("Antarctica/Syowa", "昭和");
put("Antarctica/Troll", "特罗尔");
put("Antarctica/Vostok", "沃斯托克");
put("Etc/GMT", "GMT");
put("Etc/GMT1", "GMT+1");
put("Etc/GMT10", "GMT+10");
put("Etc/GMT11", "GMT+11");
put("Etc/GMT12", "GMT+12");
put("Etc/GMT2", "GMT+2");
put("Etc/GMT3", "GMT+3");
put("Etc/GMT4", "GMT+4");
put("Etc/GMT5", "GMT+5");
put("Etc/GMT6", "GMT+6");
put("Etc/GMT7", "GMT+7");
put("Etc/GMT8", "GMT+8");
put("Etc/GMT9", "GMT+9");
put("Etc/GMT-1", "GMT-1");
put("Etc/GMT-10", "GMT-10");
put("Etc/GMT-11", "GMT-11");
put("Etc/GMT-12", "GMT-12");
put("Etc/GMT-13", "GMT-13");
put("Etc/GMT-14", "GMT-14");
put("Etc/GMT-2", "GMT-2");
put("Etc/GMT-3", "GMT-3");
put("Etc/GMT-4", "GMT-4");
put("Etc/GMT-5", "GMT-5");
put("Etc/GMT-6", "GMT-6");
put("Etc/GMT-7", "GMT-7");
put("Etc/GMT-8", "GMT-8");
put("Etc/GMT-9", "GMT-9");
put("Etc/UTC", "UTC");
put("Etc/Unknown", "未知城市");
} };
this.timezoneNames = new HashMap() { {
put("Europe/Dublin", new TimeZoneNames("Europe/Dublin", new TimeZoneNames.Name(null, null, "爱尔兰标准时间"),
null));
put("Europe/London", new TimeZoneNames("Europe/London", new TimeZoneNames.Name(null, null, "英国夏令时间"),
null));
put("Etc/UTC", new TimeZoneNames("Etc/UTC", new TimeZoneNames.Name(null, "协调世界时", null),
new TimeZoneNames.Name(null, "UTC", null)));
} };
this.metazoneNames = new HashMap() { {
put("Acre", new TimeZoneNames("Acre",
new TimeZoneNames.Name("阿克里时间", "阿克里标准时间", "阿克里夏令时间"),
null));
put("Afghanistan", new TimeZoneNames("Afghanistan",
new TimeZoneNames.Name(null, "阿富汗时间", null),
null));
put("Africa_Central", new TimeZoneNames("Africa_Central",
new TimeZoneNames.Name(null, "中部非洲时间", null),
null));
put("Africa_Eastern", new TimeZoneNames("Africa_Eastern",
new TimeZoneNames.Name(null, "东部非洲时间", null),
null));
put("Africa_Southern", new TimeZoneNames("Africa_Southern",
new TimeZoneNames.Name(null, "南部非洲时间", null),
null));
put("Africa_Western", new TimeZoneNames("Africa_Western",
new TimeZoneNames.Name("西部非洲时间", "西部非洲标准时间", "西部非洲夏令时间"),
null));
put("Alaska", new TimeZoneNames("Alaska",
new TimeZoneNames.Name("阿拉斯加时间", "阿拉斯加标准时间", "阿拉斯加夏令时间"),
null));
put("Almaty", new TimeZoneNames("Almaty",
new TimeZoneNames.Name("阿拉木图时间", "阿拉木图标准时间", "阿拉木图夏令时间"),
null));
put("Amazon", new TimeZoneNames("Amazon",
new TimeZoneNames.Name("亚马逊时间", "亚马逊标准时间", "亚马逊夏令时间"),
null));
put("America_Central", new TimeZoneNames("America_Central",
new TimeZoneNames.Name("北美中部时间", "北美中部标准时间", "北美中部夏令时间"),
null));
put("America_Eastern", new TimeZoneNames("America_Eastern",
new TimeZoneNames.Name("北美东部时间", "北美东部标准时间", "北美东部夏令时间"),
null));
put("America_Mountain", new TimeZoneNames("America_Mountain",
new TimeZoneNames.Name("北美山区时间", "北美山区标准时间", "北美山区夏令时间"),
null));
put("America_Pacific", new TimeZoneNames("America_Pacific",
new TimeZoneNames.Name("北美太平洋时间", "北美太平洋标准时间", "北美太平洋夏令时间"),
null));
put("Anadyr", new TimeZoneNames("Anadyr",
new TimeZoneNames.Name("阿纳德尔时间", "阿纳德尔标准时间", "阿纳德尔夏令时间"),
null));
put("Apia", new TimeZoneNames("Apia",
new TimeZoneNames.Name("阿皮亚时间", "阿皮亚标准时间", "阿皮亚夏令时间"),
null));
put("Aqtau", new TimeZoneNames("Aqtau",
new TimeZoneNames.Name("阿克套时间", "阿克套标准时间", "阿克套夏令时间"),
null));
put("Aqtobe", new TimeZoneNames("Aqtobe",
new TimeZoneNames.Name("阿克托别时间", "阿克托别标准时间", "阿克托别夏令时间"),
null));
put("Arabian", new TimeZoneNames("Arabian",
new TimeZoneNames.Name("阿拉伯时间", "阿拉伯标准时间", "阿拉伯夏令时间"),
null));
put("Argentina", new TimeZoneNames("Argentina",
new TimeZoneNames.Name("阿根廷时间", "阿根廷标准时间", "阿根廷夏令时间"),
null));
put("Argentina_Western", new TimeZoneNames("Argentina_Western",
new TimeZoneNames.Name("阿根廷西部时间", "阿根廷西部标准时间", "阿根廷西部夏令时间"),
null));
put("Armenia", new TimeZoneNames("Armenia",
new TimeZoneNames.Name("亚美尼亚时间", "亚美尼亚标准时间", "亚美尼亚夏令时间"),
null));
put("Atlantic", new TimeZoneNames("Atlantic",
new TimeZoneNames.Name("大西洋时间", "大西洋标准时间", "大西洋夏令时间"),
null));
put("Australia_Central", new TimeZoneNames("Australia_Central",
new TimeZoneNames.Name("澳大利亚中部时间", "澳大利亚中部标准时间", "澳大利亚中部夏令时间"),
null));
put("Australia_CentralWestern", new TimeZoneNames("Australia_CentralWestern",
new TimeZoneNames.Name("澳大利亚中西部时间", "澳大利亚中西部标准时间", "澳大利亚中西部夏令时间"),
null));
put("Australia_Eastern", new TimeZoneNames("Australia_Eastern",
new TimeZoneNames.Name("澳大利亚东部时间", "澳大利亚东部标准时间", "澳大利亚东部夏令时间"),
null));
put("Australia_Western", new TimeZoneNames("Australia_Western",
new TimeZoneNames.Name("澳大利亚西部时间", "澳大利亚西部标准时间", "澳大利亚西部夏令时间"),
null));
put("Azerbaijan", new TimeZoneNames("Azerbaijan",
new TimeZoneNames.Name("阿塞拜疆时间", "阿塞拜疆标准时间", "阿塞拜疆夏令时间"),
null));
put("Azores", new TimeZoneNames("Azores",
new TimeZoneNames.Name("亚速尔群岛时间", "亚速尔群岛标准时间", "亚速尔群岛夏令时间"),
null));
put("Bangladesh", new TimeZoneNames("Bangladesh",
new TimeZoneNames.Name("孟加拉时间", "孟加拉标准时间", "孟加拉夏令时间"),
null));
put("Bhutan", new TimeZoneNames("Bhutan",
new TimeZoneNames.Name(null, "不丹时间", null),
null));
put("Bolivia", new TimeZoneNames("Bolivia",
new TimeZoneNames.Name(null, "玻利维亚标准时间", null),
null));
put("Brasilia", new TimeZoneNames("Brasilia",
new TimeZoneNames.Name("巴西利亚时间", "巴西利亚标准时间", "巴西利亚夏令时间"),
null));
put("Brunei", new TimeZoneNames("Brunei",
new TimeZoneNames.Name(null, "文莱达鲁萨兰时间", null),
null));
put("Cape_Verde", new TimeZoneNames("Cape_Verde",
new TimeZoneNames.Name("佛得角时间", "佛得角标准时间", "佛得角夏令时间"),
null));
put("Casey", new TimeZoneNames("Casey",
new TimeZoneNames.Name(null, "凯西时间", null),
null));
put("Chamorro", new TimeZoneNames("Chamorro",
new TimeZoneNames.Name(null, "查莫罗时间", null),
null));
put("Chatham", new TimeZoneNames("Chatham",
new TimeZoneNames.Name("查坦时间", "查坦标准时间", "查坦夏令时间"),
null));
put("Chile", new TimeZoneNames("Chile",
new TimeZoneNames.Name("智利时间", "智利标准时间", "智利夏令时间"),
null));
put("China", new TimeZoneNames("China",
new TimeZoneNames.Name("中国时间", "中国标准时间", "中国夏令时间"),
null));
put("Choibalsan", new TimeZoneNames("Choibalsan",
new TimeZoneNames.Name("乔巴山时间", "乔巴山标准时间", "乔巴山夏令时间"),
null));
put("Christmas", new TimeZoneNames("Christmas",
new TimeZoneNames.Name(null, "圣诞岛时间", null),
null));
put("Cocos", new TimeZoneNames("Cocos",
new TimeZoneNames.Name(null, "科科斯群岛时间", null),
null));
put("Colombia", new TimeZoneNames("Colombia",
new TimeZoneNames.Name("哥伦比亚时间", "哥伦比亚标准时间", "哥伦比亚夏令时间"),
null));
put("Cook", new TimeZoneNames("Cook",
new TimeZoneNames.Name("库克群岛时间", "库克群岛标准时间", "库克群岛仲夏时间"),
null));
put("Cuba", new TimeZoneNames("Cuba",
new TimeZoneNames.Name("古巴时间", "古巴标准时间", "古巴夏令时间"),
null));
put("Davis", new TimeZoneNames("Davis",
new TimeZoneNames.Name(null, "戴维斯时间", null),
null));
put("DumontDUrville", new TimeZoneNames("DumontDUrville",
new TimeZoneNames.Name(null, "迪蒙迪尔维尔时间", null),
null));
put("East_Timor", new TimeZoneNames("East_Timor",
new TimeZoneNames.Name(null, "东帝汶时间", null),
null));
put("Easter", new TimeZoneNames("Easter",
new TimeZoneNames.Name("复活节岛时间", "复活节岛标准时间", "复活节岛夏令时间"),
null));
put("Ecuador", new TimeZoneNames("Ecuador",
new TimeZoneNames.Name(null, "厄瓜多尔标准时间", null),
null));
put("Europe_Central", new TimeZoneNames("Europe_Central",
new TimeZoneNames.Name("中欧时间", "中欧标准时间", "中欧夏令时间"),
null));
put("Europe_Eastern", new TimeZoneNames("Europe_Eastern",
new TimeZoneNames.Name("东欧时间", "东欧标准时间", "东欧夏令时间"),
null));
put("Europe_Further_Eastern", new TimeZoneNames("Europe_Further_Eastern",
new TimeZoneNames.Name(null, "远东标准时间", null),
null));
put("Europe_Western", new TimeZoneNames("Europe_Western",
new TimeZoneNames.Name("西欧时间", "西欧标准时间", "西欧夏令时间"),
null));
put("Falkland", new TimeZoneNames("Falkland",
new TimeZoneNames.Name("福克兰群岛时间", "福克兰群岛标准时间", "福克兰群岛夏令时间"),
null));
put("Fiji", new TimeZoneNames("Fiji",
new TimeZoneNames.Name("斐济时间", "斐济标准时间", "斐济夏令时间"),
null));
put("French_Guiana", new TimeZoneNames("French_Guiana",
new TimeZoneNames.Name(null, "法属圭亚那标准时间", null),
null));
put("French_Southern", new TimeZoneNames("French_Southern",
new TimeZoneNames.Name(null, "法属南方和南极领地时间", null),
null));
put("Galapagos", new TimeZoneNames("Galapagos",
new TimeZoneNames.Name(null, "加拉帕戈斯时间", null),
null));
put("Gambier", new TimeZoneNames("Gambier",
new TimeZoneNames.Name(null, "甘比尔时间", null),
null));
put("Georgia", new TimeZoneNames("Georgia",
new TimeZoneNames.Name("格鲁吉亚时间", "格鲁吉亚标准时间", "格鲁吉亚夏令时间"),
null));
put("Gilbert_Islands", new TimeZoneNames("Gilbert_Islands",
new TimeZoneNames.Name(null, "吉尔伯特群岛时间", null),
null));
put("GMT", new TimeZoneNames("GMT",
new TimeZoneNames.Name(null, "格林尼治标准时间", null),
null));
put("Greenland_Eastern", new TimeZoneNames("Greenland_Eastern",
new TimeZoneNames.Name("格陵兰岛东部时间", "格陵兰岛东部标准时间", "格陵兰岛东部夏令时间"),
null));
put("Greenland_Western", new TimeZoneNames("Greenland_Western",
new TimeZoneNames.Name("格陵兰岛西部时间", "格陵兰岛西部标准时间", "格陵兰岛西部夏令时间"),
null));
put("Guam", new TimeZoneNames("Guam",
new TimeZoneNames.Name(null, "关岛时间", null),
null));
put("Gulf", new TimeZoneNames("Gulf",
new TimeZoneNames.Name(null, "海湾标准时间", null),
null));
put("Guyana", new TimeZoneNames("Guyana",
new TimeZoneNames.Name(null, "圭亚那时间", null),
null));
put("Hawaii_Aleutian", new TimeZoneNames("Hawaii_Aleutian",
new TimeZoneNames.Name("夏威夷-阿留申时间", "夏威夷-阿留申标准时间", "夏威夷-阿留申夏令时间"),
null));
put("Hong_Kong", new TimeZoneNames("Hong_Kong",
new TimeZoneNames.Name("香港时间", "香港标准时间", "香港夏令时间"),
null));
put("Hovd", new TimeZoneNames("Hovd",
new TimeZoneNames.Name("科布多时间", "科布多标准时间", "科布多夏令时间"),
null));
put("India", new TimeZoneNames("India",
new TimeZoneNames.Name(null, "印度时间", null),
null));
put("Indian_Ocean", new TimeZoneNames("Indian_Ocean",
new TimeZoneNames.Name(null, "印度洋时间", null),
null));
put("Indochina", new TimeZoneNames("Indochina",
new TimeZoneNames.Name(null, "印度支那时间", null),
null));
put("Indonesia_Central", new TimeZoneNames("Indonesia_Central",
new TimeZoneNames.Name(null, "印度尼西亚中部时间", null),
null));
put("Indonesia_Eastern", new TimeZoneNames("Indonesia_Eastern",
new TimeZoneNames.Name(null, "印度尼西亚东部时间", null),
null));
put("Indonesia_Western", new TimeZoneNames("Indonesia_Western",
new TimeZoneNames.Name(null, "印度尼西亚西部时间", null),
null));
put("Iran", new TimeZoneNames("Iran",
new TimeZoneNames.Name("伊朗时间", "伊朗标准时间", "伊朗夏令时间"),
null));
put("Irkutsk", new TimeZoneNames("Irkutsk",
new TimeZoneNames.Name("伊尔库茨克时间", "伊尔库茨克标准时间", "伊尔库茨克夏令时间"),
null));
put("Israel", new TimeZoneNames("Israel",
new TimeZoneNames.Name("以色列时间", "以色列标准时间", "以色列夏令时间"),
null));
put("Japan", new TimeZoneNames("Japan",
new TimeZoneNames.Name("日本时间", "日本标准时间", "日本夏令时间"),
null));
put("Kamchatka", new TimeZoneNames("Kamchatka",
new TimeZoneNames.Name("彼得罗巴甫洛夫斯克-堪察加时间", "彼得罗巴甫洛夫斯克-堪察加标准时间", "彼得罗巴甫洛夫斯克-堪察加夏令时间"),
null));
put("Kazakhstan_Eastern", new TimeZoneNames("Kazakhstan_Eastern",
new TimeZoneNames.Name(null, "哈萨克斯坦东部时间", null),
null));
put("Kazakhstan_Western", new TimeZoneNames("Kazakhstan_Western",
new TimeZoneNames.Name(null, "哈萨克斯坦西部时间", null),
null));
put("Korea", new TimeZoneNames("Korea",
new TimeZoneNames.Name("韩国时间", "韩国标准时间", "韩国夏令时间"),
null));
put("Kosrae", new TimeZoneNames("Kosrae",
new TimeZoneNames.Name(null, "科斯雷时间", null),
null));
put("Krasnoyarsk", new TimeZoneNames("Krasnoyarsk",
new TimeZoneNames.Name("克拉斯诺亚尔斯克时间", "克拉斯诺亚尔斯克标准时间", "克拉斯诺亚尔斯克夏令时间"),
null));
put("Kyrgystan", new TimeZoneNames("Kyrgystan",
new TimeZoneNames.Name(null, "吉尔吉斯斯坦时间", null),
null));
put("Lanka", new TimeZoneNames("Lanka",
new TimeZoneNames.Name(null, "兰卡时间", null),
null));
put("Line_Islands", new TimeZoneNames("Line_Islands",
new TimeZoneNames.Name(null, "莱恩群岛时间", null),
null));
put("Lord_Howe", new TimeZoneNames("Lord_Howe",
new TimeZoneNames.Name("豪勋爵岛时间", "豪勋爵岛标准时间", "豪勋爵岛夏令时间"),
null));
put("Macau", new TimeZoneNames("Macau",
new TimeZoneNames.Name("澳门时间", "澳门标准时间", "澳门夏令时间"),
null));
put("Macquarie", new TimeZoneNames("Macquarie",
new TimeZoneNames.Name(null, "麦夸里岛时间", null),
null));
put("Magadan", new TimeZoneNames("Magadan",
new TimeZoneNames.Name("马加丹时间", "马加丹标准时间", "马加丹夏令时间"),
null));
put("Malaysia", new TimeZoneNames("Malaysia",
new TimeZoneNames.Name(null, "马来西亚时间", null),
null));
put("Maldives", new TimeZoneNames("Maldives",
new TimeZoneNames.Name(null, "马尔代夫时间", null),
null));
put("Marquesas", new TimeZoneNames("Marquesas",
new TimeZoneNames.Name(null, "马克萨斯群岛时间", null),
null));
put("Marshall_Islands", new TimeZoneNames("Marshall_Islands",
new TimeZoneNames.Name(null, "马绍尔群岛时间", null),
null));
put("Mauritius", new TimeZoneNames("Mauritius",
new TimeZoneNames.Name("毛里求斯时间", "毛里求斯标准时间", "毛里求斯夏令时间"),
null));
put("Mawson", new TimeZoneNames("Mawson",
new TimeZoneNames.Name(null, "莫森时间", null),
null));
put("Mexico_Northwest", new TimeZoneNames("Mexico_Northwest",
new TimeZoneNames.Name("墨西哥西北部时间", "墨西哥西北部标准时间", "墨西哥西北部夏令时间"),
null));
put("Mexico_Pacific", new TimeZoneNames("Mexico_Pacific",
new TimeZoneNames.Name("墨西哥太平洋时间", "墨西哥太平洋标准时间", "墨西哥太平洋夏令时间"),
null));
put("Mongolia", new TimeZoneNames("Mongolia",
new TimeZoneNames.Name("乌兰巴托时间", "乌兰巴托标准时间", "乌兰巴托夏令时间"),
null));
put("Moscow", new TimeZoneNames("Moscow",
new TimeZoneNames.Name("莫斯科时间", "莫斯科标准时间", "莫斯科夏令时间"),
null));
put("Myanmar", new TimeZoneNames("Myanmar",
new TimeZoneNames.Name(null, "缅甸时间", null),
null));
put("Nauru", new TimeZoneNames("Nauru",
new TimeZoneNames.Name(null, "瑙鲁时间", null),
null));
put("Nepal", new TimeZoneNames("Nepal",
new TimeZoneNames.Name(null, "尼泊尔时间", null),
null));
put("New_Caledonia", new TimeZoneNames("New_Caledonia",
new TimeZoneNames.Name("新喀里多尼亚时间", "新喀里多尼亚标准时间", "新喀里多尼亚夏令时间"),
null));
put("New_Zealand", new TimeZoneNames("New_Zealand",
new TimeZoneNames.Name("新西兰时间", "新西兰标准时间", "新西兰夏令时间"),
null));
put("Newfoundland", new TimeZoneNames("Newfoundland",
new TimeZoneNames.Name("纽芬兰时间", "纽芬兰标准时间", "纽芬兰夏令时间"),
null));
put("Niue", new TimeZoneNames("Niue",
new TimeZoneNames.Name(null, "纽埃时间", null),
null));
put("Norfolk", new TimeZoneNames("Norfolk",
new TimeZoneNames.Name(null, "诺福克岛时间", null),
null));
put("Noronha", new TimeZoneNames("Noronha",
new TimeZoneNames.Name("费尔南多-迪诺罗尼亚岛时间", "费尔南多-迪诺罗尼亚岛标准时间", "费尔南多-迪诺罗尼亚岛夏令时间"),
null));
put("North_Mariana", new TimeZoneNames("North_Mariana",
new TimeZoneNames.Name(null, "北马里亚纳群岛时间", null),
null));
put("Novosibirsk", new TimeZoneNames("Novosibirsk",
new TimeZoneNames.Name("新西伯利亚时间", "新西伯利亚标准时间", "新西伯利亚夏令时间"),
null));
put("Omsk", new TimeZoneNames("Omsk",
new TimeZoneNames.Name("鄂木斯克时间", "鄂木斯克标准时间", "鄂木斯克夏令时间"),
null));
put("Pakistan", new TimeZoneNames("Pakistan",
new TimeZoneNames.Name("巴基斯坦时间", "巴基斯坦标准时间", "巴基斯坦夏令时间"),
null));
put("Palau", new TimeZoneNames("Palau",
new TimeZoneNames.Name(null, "帕劳时间", null),
null));
put("Papua_New_Guinea", new TimeZoneNames("Papua_New_Guinea",
new TimeZoneNames.Name(null, "巴布亚新几内亚时间", null),
null));
put("Paraguay", new TimeZoneNames("Paraguay",
new TimeZoneNames.Name("巴拉圭时间", "巴拉圭标准时间", "巴拉圭夏令时间"),
null));
put("Peru", new TimeZoneNames("Peru",
new TimeZoneNames.Name("秘鲁时间", "秘鲁标准时间", "秘鲁夏令时间"),
null));
put("Philippines", new TimeZoneNames("Philippines",
new TimeZoneNames.Name("菲律宾时间", "菲律宾标准时间", "菲律宾夏令时间"),
null));
put("Phoenix_Islands", new TimeZoneNames("Phoenix_Islands",
new TimeZoneNames.Name(null, "菲尼克斯群岛时间", null),
null));
put("Pierre_Miquelon", new TimeZoneNames("Pierre_Miquelon",
new TimeZoneNames.Name("圣皮埃尔和密克隆群岛时间", "圣皮埃尔和密克隆群岛标准时间", "圣皮埃尔和密克隆群岛夏令时间"),
null));
put("Pitcairn", new TimeZoneNames("Pitcairn",
new TimeZoneNames.Name(null, "皮特凯恩时间", null),
null));
put("Ponape", new TimeZoneNames("Ponape",
new TimeZoneNames.Name(null, "波纳佩时间", null),
null));
put("Pyongyang", new TimeZoneNames("Pyongyang",
new TimeZoneNames.Name(null, "平壤时间", null),
null));
put("Qyzylorda", new TimeZoneNames("Qyzylorda",
new TimeZoneNames.Name("克孜洛尔达时间", "克孜洛尔达标准时间", "克孜洛尔达夏令时间"),
null));
put("Reunion", new TimeZoneNames("Reunion",
new TimeZoneNames.Name(null, "留尼汪时间", null),
null));
put("Rothera", new TimeZoneNames("Rothera",
new TimeZoneNames.Name(null, "罗瑟拉时间", null),
null));
put("Sakhalin", new TimeZoneNames("Sakhalin",
new TimeZoneNames.Name("库页岛时间", "库页岛标准时间", "库页岛夏令时间"),
null));
put("Samara", new TimeZoneNames("Samara",
new TimeZoneNames.Name("萨马拉时间", "萨马拉标准时间", "萨马拉夏令时间"),
null));
put("Samoa", new TimeZoneNames("Samoa",
new TimeZoneNames.Name("萨摩亚时间", "萨摩亚标准时间", "萨摩亚夏令时间"),
null));
put("Seychelles", new TimeZoneNames("Seychelles",
new TimeZoneNames.Name(null, "塞舌尔时间", null),
null));
put("Singapore", new TimeZoneNames("Singapore",
new TimeZoneNames.Name(null, "新加坡标准时间", null),
null));
put("Solomon", new TimeZoneNames("Solomon",
new TimeZoneNames.Name(null, "所罗门群岛时间", null),
null));
put("South_Georgia", new TimeZoneNames("South_Georgia",
new TimeZoneNames.Name(null, "南乔治亚岛时间", null),
null));
put("Suriname", new TimeZoneNames("Suriname",
new TimeZoneNames.Name(null, "苏里南时间", null),
null));
put("Syowa", new TimeZoneNames("Syowa",
new TimeZoneNames.Name(null, "昭和时间", null),
null));
put("Tahiti", new TimeZoneNames("Tahiti",
new TimeZoneNames.Name(null, "塔希提岛时间", null),
null));
put("Taipei", new TimeZoneNames("Taipei",
new TimeZoneNames.Name("台北时间", "台北标准时间", "台北夏令时间"),
null));
put("Tajikistan", new TimeZoneNames("Tajikistan",
new TimeZoneNames.Name(null, "塔吉克斯坦时间", null),
null));
put("Tokelau", new TimeZoneNames("Tokelau",
new TimeZoneNames.Name(null, "托克劳时间", null),
null));
put("Tonga", new TimeZoneNames("Tonga",
new TimeZoneNames.Name("汤加时间", "汤加标准时间", "汤加夏令时间"),
null));
put("Truk", new TimeZoneNames("Truk",
new TimeZoneNames.Name(null, "楚克时间", null),
null));
put("Turkmenistan", new TimeZoneNames("Turkmenistan",
new TimeZoneNames.Name("土库曼斯坦时间", "土库曼斯坦标准时间", "土库曼斯坦夏令时间"),
null));
put("Tuvalu", new TimeZoneNames("Tuvalu",
new TimeZoneNames.Name(null, "图瓦卢时间", null),
null));
put("Uruguay", new TimeZoneNames("Uruguay",
new TimeZoneNames.Name("乌拉圭时间", "乌拉圭标准时间", "乌拉圭夏令时间"),
null));
put("Uzbekistan", new TimeZoneNames("Uzbekistan",
new TimeZoneNames.Name("乌兹别克斯坦时间", "乌兹别克斯坦标准时间", "乌兹别克斯坦夏令时间"),
null));
put("Vanuatu", new TimeZoneNames("Vanuatu",
new TimeZoneNames.Name("瓦努阿图时间", "瓦努阿图标准时间", "瓦努阿图夏令时间"),
null));
put("Venezuela", new TimeZoneNames("Venezuela",
new TimeZoneNames.Name(null, "委内瑞拉时间", null),
null));
put("Vladivostok", new TimeZoneNames("Vladivostok",
new TimeZoneNames.Name("海参崴时间", "海参崴标准时间", "海参崴夏令时间"),
null));
put("Volgograd", new TimeZoneNames("Volgograd",
new TimeZoneNames.Name("伏尔加格勒时间", "伏尔加格勒标准时间", "伏尔加格勒夏令时间"),
null));
put("Vostok", new TimeZoneNames("Vostok",
new TimeZoneNames.Name(null, "沃斯托克时间", null),
null));
put("Wake", new TimeZoneNames("Wake",
new TimeZoneNames.Name(null, "威克岛时间", null),
null));
put("Wallis", new TimeZoneNames("Wallis",
new TimeZoneNames.Name(null, "瓦利斯和富图纳时间", null),
null));
put("Yakutsk", new TimeZoneNames("Yakutsk",
new TimeZoneNames.Name("雅库茨克时间", "雅库茨克标准时间", "雅库茨克夏令时间"),
null));
put("Yekaterinburg", new TimeZoneNames("Yekaterinburg",
new TimeZoneNames.Name("叶卡捷琳堡时间", "叶卡捷琳堡标准时间", "叶卡捷琳堡夏令时间"),
null));
} };
}
@Override
public void formatDate(CalendarFormat type, ZonedDateTime d, StringBuilder b) {
if (type == null) {
return;
}
switch (type) {
case SHORT: {
// "y/M/d"
formatField(d, 'y', 1, b);
b.append("/");
formatField(d, 'M', 1, b);
b.append("/");
formatField(d, 'd', 1, b);
break;
}
case MEDIUM: {
// "y年M月d日"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
break;
}
case LONG: {
// "y年M月d日"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
break;
}
case FULL: {
// "y年M月d日EEEE"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
formatField(d, 'E', 4, b);
break;
}
}
}
@Override
public void formatTime(CalendarFormat type, ZonedDateTime d, StringBuilder b) {
if (type == null) {
return;
}
switch (type) {
case SHORT: {
// "ah:mm"
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
break;
}
case MEDIUM: {
// "ah:mm:ss"
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case LONG: {
// "z ah:mm:ss"
formatField(d, 'z', 1, b);
b.append(" ");
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case FULL: {
// "zzzz ah:mm:ss"
formatField(d, 'z', 4, b);
b.append(" ");
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
}
}
@Override
public void formatWrapped(CalendarFormat wrapperType, CalendarFormat dateType,
CalendarFormat timeType, String dateSkel, String timeSkel, ZonedDateTime d, StringBuilder b) {
switch (wrapperType) {
case SHORT:
case MEDIUM:
case LONG:
case FULL:
{
// "{1} {0}"
if (dateType != null) {
formatDate(dateType, d, b);
} else {
formatSkeleton(dateSkel, d, b);
}
b.append(" ");
if (timeType != null) {
formatTime(timeType, d, b);
} else {
formatSkeleton(timeSkel, d, b);
}
break;
}
}
}
@Override
public boolean formatSkeleton(String skeleton, ZonedDateTime d, StringBuilder b) {
if (skeleton == null) {
return false;
}
switch (skeleton) {
case "d": {
// Pattern: "d日"
formatField(d, 'd', 1, b);
b.append("日");
break;
}
case "E": {
// Pattern: "ccc"
formatField(d, 'c', 3, b);
break;
}
case "Ed": {
// Pattern: "d日E"
formatField(d, 'd', 1, b);
b.append("日");
formatField(d, 'E', 1, b);
break;
}
case "Ehm": {
// Pattern: "Eah:mm"
formatField(d, 'E', 1, b);
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
break;
}
case "EHm": {
// Pattern: "EHH:mm"
formatField(d, 'E', 1, b);
formatField(d, 'H', 2, b);
b.append(":");
formatField(d, 'm', 2, b);
break;
}
case "Ehms": {
// Pattern: "Eah:mm:ss"
formatField(d, 'E', 1, b);
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case "EHms": {
// Pattern: "EHH:mm:ss"
formatField(d, 'E', 1, b);
formatField(d, 'H', 2, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case "Gy": {
// Pattern: "Gy年"
formatField(d, 'G', 1, b);
formatField(d, 'y', 1, b);
b.append("年");
break;
}
case "GyMMM": {
// Pattern: "Gy年M月"
formatField(d, 'G', 1, b);
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
break;
}
case "GyMMMd": {
// Pattern: "Gy年M月d日"
formatField(d, 'G', 1, b);
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
break;
}
case "GyMMMEd": {
// Pattern: "Gy年M月d日E"
formatField(d, 'G', 1, b);
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
formatField(d, 'E', 1, b);
break;
}
case "h": {
// Pattern: "ah时"
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append("时");
break;
}
case "H": {
// Pattern: "H时"
formatField(d, 'H', 1, b);
b.append("时");
break;
}
case "hm": {
// Pattern: "ah:mm"
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
break;
}
case "Hm": {
// Pattern: "HH:mm"
formatField(d, 'H', 2, b);
b.append(":");
formatField(d, 'm', 2, b);
break;
}
case "hms": {
// Pattern: "ah:mm:ss"
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case "Hms": {
// Pattern: "HH:mm:ss"
formatField(d, 'H', 2, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case "hmsv": {
// Pattern: "v ah:mm:ss"
formatField(d, 'v', 1, b);
b.append(" ");
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case "Hmsv": {
// Pattern: "v HH:mm:ss"
formatField(d, 'v', 1, b);
b.append(" ");
formatField(d, 'H', 2, b);
b.append(":");
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case "hmv": {
// Pattern: "v ah:mm"
formatField(d, 'v', 1, b);
b.append(" ");
formatField(d, 'a', 1, b);
formatField(d, 'h', 1, b);
b.append(":");
formatField(d, 'm', 2, b);
break;
}
case "Hmv": {
// Pattern: "v HH:mm"
formatField(d, 'v', 1, b);
b.append(" ");
formatField(d, 'H', 2, b);
b.append(":");
formatField(d, 'm', 2, b);
break;
}
case "M": {
// Pattern: "M月"
formatField(d, 'M', 1, b);
b.append("月");
break;
}
case "Md": {
// Pattern: "M/d"
formatField(d, 'M', 1, b);
b.append("/");
formatField(d, 'd', 1, b);
break;
}
case "MEd": {
// Pattern: "M/dE"
formatField(d, 'M', 1, b);
b.append("/");
formatField(d, 'd', 1, b);
formatField(d, 'E', 1, b);
break;
}
case "MMdd": {
// Pattern: "MM/dd"
formatField(d, 'M', 2, b);
b.append("/");
formatField(d, 'd', 2, b);
break;
}
case "MMM": {
// Pattern: "LLL"
formatField(d, 'L', 3, b);
break;
}
case "MMMd": {
// Pattern: "M月d日"
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
break;
}
case "MMMEd": {
// Pattern: "M月d日E"
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
formatField(d, 'E', 1, b);
break;
}
case "MMMMd": {
// Pattern: "M月d日"
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
break;
}
case "MMMMW-count-other": {
// Pattern: "MMM第W周"
formatField(d, 'M', 3, b);
b.append("第");
formatField(d, 'W', 1, b);
b.append("周");
break;
}
case "ms": {
// Pattern: "mm:ss"
formatField(d, 'm', 2, b);
b.append(":");
formatField(d, 's', 2, b);
break;
}
case "y": {
// Pattern: "y年"
formatField(d, 'y', 1, b);
b.append("年");
break;
}
case "yM": {
// Pattern: "y年M月"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
break;
}
case "yMd": {
// Pattern: "y/M/d"
formatField(d, 'y', 1, b);
b.append("/");
formatField(d, 'M', 1, b);
b.append("/");
formatField(d, 'd', 1, b);
break;
}
case "yMEd": {
// Pattern: "y/M/dE"
formatField(d, 'y', 1, b);
b.append("/");
formatField(d, 'M', 1, b);
b.append("/");
formatField(d, 'd', 1, b);
formatField(d, 'E', 1, b);
break;
}
case "yMM": {
// Pattern: "y年M月"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
break;
}
case "yMMM": {
// Pattern: "y年M月"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
break;
}
case "yMMMd": {
// Pattern: "y年M月d日"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
break;
}
case "yMMMEd": {
// Pattern: "y年M月d日E"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
formatField(d, 'd', 1, b);
b.append("日");
formatField(d, 'E', 1, b);
break;
}
case "yMMMM": {
// Pattern: "y年M月"
formatField(d, 'y', 1, b);
b.append("年");
formatField(d, 'M', 1, b);
b.append("月");
break;
}
case "yQQQ": {
// Pattern: "y年第Q季度"
formatField(d, 'y', 1, b);
b.append("年第");
formatField(d, 'Q', 1, b);
b.append("季度");
break;
}
case "yQQQQ": {
// Pattern: "y年第Q季度"
formatField(d, 'y', 1, b);
b.append("年第");
formatField(d, 'Q', 1, b);
b.append("季度");
break;
}
case "yw-count-other": {
// Pattern: "y年第w周"
formatField(d, 'y', 1, b);
b.append("年第");
formatField(d, 'w', 1, b);
b.append("周");
break;
}
default: {
return false;
}
}
return true;
}
@Override
public void formatInterval(ZonedDateTime s, ZonedDateTime e, String k, DateTimeField f,
StringBuilder b) {
if (k != null && f != null) {
switch (k) {
case "d": {
switch (f) {
case DAY: {
// "d–"
formatField(s, 'd', 1, b);
b.append("–");
// "d日"
formatField(e, 'd', 1, b);
b.append("日");
return;
}
default: break;
}
break;
}
case "hm": {
switch (f) {
case AM_PM: {
// "ah:mm至"
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("至");
// "ah:mm"
formatField(e, 'a', 1, b);
formatField(e, 'h', 1, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
case HOUR: {
// "ah:mm至"
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("至");
// "h:mm"
formatField(e, 'h', 1, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
case MINUTE: {
// "ah:mm至"
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("至");
// "h:mm"
formatField(e, 'h', 1, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
default: break;
}
break;
}
case "Hm": {
switch (f) {
case HOUR: {
// "HH:mm–"
formatField(s, 'H', 2, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("–");
// "HH:mm"
formatField(e, 'H', 2, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
case MINUTE: {
// "HH:mm–"
formatField(s, 'H', 2, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("–");
// "HH:mm"
formatField(e, 'H', 2, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
default: break;
}
break;
}
case "h": {
switch (f) {
case AM_PM: {
// "ah时至"
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append("时至");
// "ah时"
formatField(e, 'a', 1, b);
formatField(e, 'h', 1, b);
b.append("时");
return;
}
case HOUR: {
// "ah时至"
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append("时至");
// "h时"
formatField(e, 'h', 1, b);
b.append("时");
return;
}
default: break;
}
break;
}
case "H": {
switch (f) {
case HOUR: {
// "HH–"
formatField(s, 'H', 2, b);
b.append("–");
// "HH"
formatField(e, 'H', 2, b);
return;
}
default: break;
}
break;
}
case "yMMMEd": {
switch (f) {
case DAY: {
// "y年M月d日E至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日");
formatField(s, 'E', 1, b);
b.append("至");
// "d日E"
formatField(e, 'd', 1, b);
b.append("日");
formatField(e, 'E', 1, b);
return;
}
case YEAR: {
// "y年M月d日E至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日");
formatField(s, 'E', 1, b);
b.append("至");
// "y年M月d日E"
formatField(e, 'y', 1, b);
b.append("年");
formatField(e, 'M', 1, b);
b.append("月");
formatField(e, 'd', 1, b);
b.append("日");
formatField(e, 'E', 1, b);
return;
}
case MONTH: {
// "y年M月d日E至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日");
formatField(s, 'E', 1, b);
b.append("至");
// "M月d日E"
formatField(e, 'M', 1, b);
b.append("月");
formatField(e, 'd', 1, b);
b.append("日");
formatField(e, 'E', 1, b);
return;
}
default: break;
}
break;
}
case "yMEd": {
switch (f) {
case DAY: {
// "y/M/dE至"
formatField(s, 'y', 1, b);
b.append("/");
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
formatField(s, 'E', 1, b);
b.append("至");
// "y/M/dE"
formatField(e, 'y', 1, b);
b.append("/");
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
formatField(e, 'E', 1, b);
return;
}
case YEAR: {
// "y/M/dE至"
formatField(s, 'y', 1, b);
b.append("/");
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
formatField(s, 'E', 1, b);
b.append("至");
// "y/M/dE"
formatField(e, 'y', 1, b);
b.append("/");
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
formatField(e, 'E', 1, b);
return;
}
case MONTH: {
// "y/M/dE至"
formatField(s, 'y', 1, b);
b.append("/");
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
formatField(s, 'E', 1, b);
b.append("至");
// "y/M/dE"
formatField(e, 'y', 1, b);
b.append("/");
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
formatField(e, 'E', 1, b);
return;
}
default: break;
}
break;
}
case "MMM": {
switch (f) {
case MONTH: {
// "MMM – "
formatField(s, 'M', 3, b);
b.append(" – ");
// "MMM"
formatField(e, 'M', 3, b);
return;
}
default: break;
}
break;
}
case "yMMM": {
switch (f) {
case YEAR: {
// "y年M月至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月至");
// "y年M月"
formatField(e, 'y', 1, b);
b.append("年");
formatField(e, 'M', 1, b);
b.append("月");
return;
}
case MONTH: {
// "y年M月至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月至");
// "M月"
formatField(e, 'M', 1, b);
b.append("月");
return;
}
default: break;
}
break;
}
case "M": {
switch (f) {
case MONTH: {
// "M–"
formatField(s, 'M', 1, b);
b.append("–");
// "M月"
formatField(e, 'M', 1, b);
b.append("月");
return;
}
default: break;
}
break;
}
case "MEd": {
switch (f) {
case DAY: {
// "M/dE至"
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
formatField(s, 'E', 1, b);
b.append("至");
// "M/dE"
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
formatField(e, 'E', 1, b);
return;
}
case MONTH: {
// "M/dE至"
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
formatField(s, 'E', 1, b);
b.append("至");
// "M/dE"
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
formatField(e, 'E', 1, b);
return;
}
default: break;
}
break;
}
case "MMMEd": {
switch (f) {
case DAY: {
// "M月d日E至"
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日");
formatField(s, 'E', 1, b);
b.append("至");
// "d日E"
formatField(e, 'd', 1, b);
b.append("日");
formatField(e, 'E', 1, b);
return;
}
case MONTH: {
// "M月d日E至"
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日");
formatField(s, 'E', 1, b);
b.append("至");
// "M月d日E"
formatField(e, 'M', 1, b);
b.append("月");
formatField(e, 'd', 1, b);
b.append("日");
formatField(e, 'E', 1, b);
return;
}
default: break;
}
break;
}
case "hv": {
switch (f) {
case AM_PM: {
// "vah时至"
formatField(s, 'v', 1, b);
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append("时至");
// "ah时"
formatField(e, 'a', 1, b);
formatField(e, 'h', 1, b);
b.append("时");
return;
}
case HOUR: {
// "vah时至"
formatField(s, 'v', 1, b);
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append("时至");
// "h时"
formatField(e, 'h', 1, b);
b.append("时");
return;
}
default: break;
}
break;
}
case "Hv": {
switch (f) {
case HOUR: {
// "v HH–"
formatField(s, 'v', 1, b);
b.append(" ");
formatField(s, 'H', 2, b);
b.append("–");
// "HH"
formatField(e, 'H', 2, b);
return;
}
default: break;
}
break;
}
case "hmv": {
switch (f) {
case AM_PM: {
// "vah:mm至"
formatField(s, 'v', 1, b);
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("至");
// "ah:mm"
formatField(e, 'a', 1, b);
formatField(e, 'h', 1, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
case HOUR: {
// "vah:mm至"
formatField(s, 'v', 1, b);
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("至");
// "h:mm"
formatField(e, 'h', 1, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
case MINUTE: {
// "vah:mm至"
formatField(s, 'v', 1, b);
formatField(s, 'a', 1, b);
formatField(s, 'h', 1, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("至");
// "h:mm"
formatField(e, 'h', 1, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
default: break;
}
break;
}
case "Hmv": {
switch (f) {
case HOUR: {
// "v HH:mm–"
formatField(s, 'v', 1, b);
b.append(" ");
formatField(s, 'H', 2, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("–");
// "HH:mm"
formatField(e, 'H', 2, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
case MINUTE: {
// "v HH:mm–"
formatField(s, 'v', 1, b);
b.append(" ");
formatField(s, 'H', 2, b);
b.append(":");
formatField(s, 'm', 2, b);
b.append("–");
// "HH:mm"
formatField(e, 'H', 2, b);
b.append(":");
formatField(e, 'm', 2, b);
return;
}
default: break;
}
break;
}
case "yMd": {
switch (f) {
case DAY: {
// "y/M/d – "
formatField(s, 'y', 1, b);
b.append("/");
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
b.append(" – ");
// "y/M/d"
formatField(e, 'y', 1, b);
b.append("/");
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
return;
}
case YEAR: {
// "y/M/d – "
formatField(s, 'y', 1, b);
b.append("/");
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
b.append(" – ");
// "y/M/d"
formatField(e, 'y', 1, b);
b.append("/");
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
return;
}
case MONTH: {
// "y/M/d – "
formatField(s, 'y', 1, b);
b.append("/");
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
b.append(" – ");
// "y/M/d"
formatField(e, 'y', 1, b);
b.append("/");
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
return;
}
default: break;
}
break;
}
case "MMMd": {
switch (f) {
case DAY: {
// "M月d日至"
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日至");
// "d日"
formatField(e, 'd', 1, b);
b.append("日");
return;
}
case MONTH: {
// "M月d日至"
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日至");
// "M月d日"
formatField(e, 'M', 1, b);
b.append("月");
formatField(e, 'd', 1, b);
b.append("日");
return;
}
default: break;
}
break;
}
case "yM": {
switch (f) {
case YEAR: {
// "y年M月至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月至");
// "y年M月"
formatField(e, 'y', 1, b);
b.append("年");
formatField(e, 'M', 1, b);
b.append("月");
return;
}
case MONTH: {
// "y年M月至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月至");
// "M月"
formatField(e, 'M', 1, b);
b.append("月");
return;
}
default: break;
}
break;
}
case "yMMMM": {
switch (f) {
case YEAR: {
// "y年M月至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月至");
// "y年M月"
formatField(e, 'y', 1, b);
b.append("年");
formatField(e, 'M', 1, b);
b.append("月");
return;
}
case MONTH: {
// "y年M月至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月至");
// "M月"
formatField(e, 'M', 1, b);
b.append("月");
return;
}
default: break;
}
break;
}
case "Md": {
switch (f) {
case DAY: {
// "M/d – "
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
b.append(" – ");
// "M/d"
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
return;
}
case MONTH: {
// "M/d – "
formatField(s, 'M', 1, b);
b.append("/");
formatField(s, 'd', 1, b);
b.append(" – ");
// "M/d"
formatField(e, 'M', 1, b);
b.append("/");
formatField(e, 'd', 1, b);
return;
}
default: break;
}
break;
}
case "y": {
switch (f) {
case YEAR: {
// "y–"
formatField(s, 'y', 1, b);
b.append("–");
// "y年"
formatField(e, 'y', 1, b);
b.append("年");
return;
}
default: break;
}
break;
}
case "yMMMd": {
switch (f) {
case DAY: {
// "y年M月d日至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日至");
// "d日"
formatField(e, 'd', 1, b);
b.append("日");
return;
}
case YEAR: {
// "y年M月d日至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日至");
// "y年M月d日"
formatField(e, 'y', 1, b);
b.append("年");
formatField(e, 'M', 1, b);
b.append("月");
formatField(e, 'd', 1, b);
b.append("日");
return;
}
case MONTH: {
// "y年M月d日至"
formatField(s, 'y', 1, b);
b.append("年");
formatField(s, 'M', 1, b);
b.append("月");
formatField(s, 'd', 1, b);
b.append("日至");
// "M月d日"
formatField(e, 'M', 1, b);
b.append("月");
formatField(e, 'd', 1, b);
b.append("日");
return;
}
default: break;
}
break;
}
default: break;
}
// "{0} – {1}"
formatSkeleton(k, s, b);
b.append(" – ");
formatSkeleton(k, e, b);
}
}
protected void wrapTimeZoneGMT(StringBuilder b, boolean neg, int hours, int mins,
boolean _short) {
if (hours == 0 && mins == 0) {
b.append("GMT");
return;
}
boolean emitMins = !_short || mins > 0;
b.append("GMT");
if (neg) {
b.append("-");
zeroPad2(b, hours, _short ? 1 : 2);
if (emitMins) {
b.append(":");
}
if (emitMins) {
zeroPad2(b, mins, 2);
}
}
else {
b.append("+");
zeroPad2(b, hours, _short ? 1 : 2);
if (emitMins) {
b.append(":");
}
if (emitMins) {
zeroPad2(b, mins, 2);
}
}
}
protected void wrapTimeZoneRegion(StringBuilder b, String region) {
b.append(region);
b.append("时间");
}
}