//先是将指定时区的日期转换为当前时区时间:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];
[formatter setTimeZone:[NSTimeZone defaultTimeZone] ] ;
NSDate *time = [formatter dateFromString:@"2011-09-27 10:11:30 +0600"];
NSLog(@"Local time is %@",[formatter stringFromDate: time]);
//然后是将当前时区时间转换为特定时区的:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];
[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Tokyo"]];
NSLog(@"Now Tokyo time is %@",[formatter stringFromDate:[NSDate date]]);
//下面是将指定时区的某个日期时间转化为指定时区的时间
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];
[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Tokyo"]];
NSDate *time = [formatter dateFromString:@"2011-09-27 10:11:30 +0600"];
NSLog(@"Tokyo time is %@",[formatter stringFromDate: time]);
顺便记个将long long 类型数据以十六进制方式打印出来:
long long number =[@"12345678901234" longLongValue];
NSLog(@"%qx",number);
更多输出格式请参见:
Objective-C中的字符串格式化输出
下面是cocoa中已知的时区名称列表及其缩写:
for (id obj in [NSTimeZone knownTimeZoneNames]) {
NSTimeZone *zone = [NSTimeZone timeZoneWithName:obj];
NSLog(@"%@", zone);
}
Africa/Abidjan (GMT) offset 0 //红色部分为该时区全名称 绿色为该时区名称的缩写
Africa/Accra (GMT) offset 0
Africa/Addis_Ababa (EAT) offset 10800
Africa/Algiers (CET) offset 3600
Africa/Asmara (EAT) offset 10800
Africa/Bamako (GMT) offset 0
Africa/Bangui (WAT) offset 3600
Africa/Banjul (GMT) offset 0
Africa/Bissau (GMT) offset 0
Africa/Blantyre (CAT) offset 7200
Africa/Brazzaville (WAT) offset 3600
Africa/Bujumbura (CAT) offset 7200
Africa/Cairo (EEST) offset 10800 (Daylight)
Africa/Casablanca (WET) offset 0
Africa/Ceuta (CEST) offset 7200 (Daylight)
Africa/Conakry (GMT) offset 0
Africa/Dakar (GMT) offset 0
Africa/Dar_es_Salaam (EAT) offset 10800
Africa/Djibouti (EAT) offset 10800
Africa/Douala (WAT) offset 3600
Africa/El_Aaiun (WET) offset 0
Africa/Freetown (GMT) offset 0
Africa/Gaborone (CAT) offset 7200
Africa/Harare (CAT) offset 7200
Africa/Johannesburg (SAST) offset 7200
Africa/Kampala (EAT) offset 10800
Africa/Khartoum (EAT) offset 10800
Africa/Kigali (CAT) offset 7200
Africa/Kinshasa (WAT) offset 3600
Africa/Lagos (WAT) offset 3600
Africa/Libreville (WAT) offset 3600
Africa/Lome (GMT) offset 0
Africa/Luanda (WAT) offset 3600
Africa/Lubumbashi (CAT) offset 7200
Africa/Lusaka (CAT) offset 7200
Africa/Malabo (WAT) offset 3600
Africa/Maputo (CAT) offset 7200
Africa/Maseru (SAST) offset 7200
Africa/Mbabane (SAST) offset 7200
Africa/Mogadishu (EAT) offset 10800
Africa/Monrovia (GMT) offset 0
Africa/Nairobi (EAT) offset 10800
Africa/Ndjamena (WAT) offset 3600
Africa/Niamey (WAT) offset 3600
Africa/Nouakchott (GMT) offset 0
Africa/Ouagadougou (GMT) offset 0
Africa/Porto-Novo (WAT) offset 3600
Africa/Sao_Tome (GMT) offset 0
Africa/Tripoli (EET) offset 7200
Africa/Tunis (CET) offset 3600
Africa/Windhoek (WAST) offset 7200 (Daylight)
America/Adak (GMT-09:00) offset -32400 (Daylight)
America/Anchorage (AKDT) offset -28800 (Daylight)
America/Anguilla (AST) offset -14400
America/Antigua (AST) offset -14400
America/Araguaina (BRT) offset -10800
America/Argentina/Buenos_Aires (ART) offset -10800
America/Argentina/Catamarca (ART) offset -10800
America/Argentina/Cordoba (ART) offset -10800
America/Argentina/Jujuy (ART) offset -10800
America/Argentina/La_Rioja (ART) offset -10800
America/Argentina/Mendoza (ART) offset -10800
America/Argentina/Rio_Gallegos (ART) offset -10800
America/Argentina/Salta (ART) offset -10800
America/Argentina/San_Juan (ART) offset -10800
America/Argentina/San_Luis (GMT-03:00) offset -10800 (Daylight)
America/Argentina/Tucuman (ART) offset -10800
America/Argentina/Ushuaia (ART) offset -10800
America/Aruba (AST) offset -14400
America/Asuncion (PYT) offset -14400
America/Atikokan (EST) offset -18000
America/Bahia (BRT) offset -10800
America/Bahia_Banderas (CDT) offset -18000 (Daylight)
America/Barbados (AST) offset -14400
America/Belem (BRT) offset -10800
America/Belize (CST) offset -21600
America/Blanc-Sablon (AST) offset -14400
America/Boa_Vista (AMT) offset -14400
America/Bogota (COT) offset -18000
America/Boise (MDT) offset -21600 (Daylight)
America/Cambridge_Bay (MDT) offset -21600 (Daylight)
America/Campo_Grande (AMT) offset -14400
America/Cancun (CDT) offset -18000 (Daylight)
America/Caracas (VET) offset -16200
America/Cayenne (GFT) offset -10800
America/Cayman (EST) offset -18000
America/Chicago (CDT) offset -18000 (Daylight)
America/Chihuahua (MDT) offset -21600 (Daylight)
America/Costa_Rica (CST) offset -21600
America/Cuiaba (AMT) offset -14400
America/Curacao (AST) offset -14400
America/Danmarkshavn (GMT) offset 0
America/Dawson (PDT) offset -25200 (Daylight)
America/Dawson_Creek (MST) offset -25200
America/Denver (MDT) offset -21600 (Daylight)
America/Detroit (EDT) offset -14400 (Daylight)
America/Dominica (AST) offset -14400
America/Edmonton (MDT) offset -21600 (Daylight)
America/Eirunepe (AMT) offset -14400
America/El_Salvador (CST) offset -21600
America/Fortaleza (BRT) offset -10800
America/Glace_Bay (ADT) offset -10800 (Daylight)
America/Godthab (WGST) offset -7200 (Daylight)
America/Goose_Bay (ADT) offset -10800 (Daylight)
America/Grand_Turk (EDT) offset -14400 (Daylight)
America/Grenada (AST) offset -14400
America/Guadeloupe (AST) offset -14400
America/Guatemala (CST) offset -21600
America/Guayaquil (ECT) offset -18000
America/Guyana (GYT) offset -14400
America/Halifax (ADT) offset -10800 (Daylight)
America/Havana (CDT (Cuba)) offset -14400 (Daylight)
America/Hermosillo (MST) offset -25200
America/Indiana/Indianapolis (EDT) offset -14400 (Daylight)
America/Indiana/Knox (CDT) offset -18000 (Daylight)
America/Indiana/Marengo (EDT) offset -14400 (Daylight)
America/Indiana/Petersburg (EDT) offset -14400 (Daylight)
America/Indiana/Tell_City (CDT) offset -18000 (Daylight)
America/Indiana/Vevay (EDT) offset -14400 (Daylight)
America/Indiana/Vincennes (EDT) offset -14400 (Daylight)
America/Indiana/Winamac (EDT) offset -14400 (Daylight)
America/Inuvik (MDT) offset -21600 (Daylight)
America/Iqaluit (EDT) offset -14400 (Daylight)
America/Jamaica (EST) offset -18000
America/Juneau (AKDT) offset -28800 (Daylight)
America/Kentucky/Louisville (EDT) offset -14400 (Daylight)
America/Kentucky/Monticello (EDT) offset -14400 (Daylight)
America/La_Paz (BOT) offset -14400
America/Lima (PET) offset -18000
America/Los_Angeles (PDT) offset -25200 (Daylight)
America/Maceio (BRT) offset -10800
America/Managua (CST) offset -21600
America/Manaus (AMT) offset -14400
America/Marigot (AST) offset -14400
America/Martinique (AST) offset -14400
America/Matamoros (CDT) offset -18000 (Daylight)
America/Mazatlan (MDT) offset -21600 (Daylight)
America/Menominee (CDT) offset -18000 (Daylight)
America/Merida (CDT) offset -18000 (Daylight)
America/Mexico_City (CDT) offset -18000 (Daylight)
America/Miquelon (PMDT) offset -7200 (Daylight)
America/Moncton (ADT) offset -10800 (Daylight)
America/Monterrey (CDT) offset -18000 (Daylight)
America/Montevideo (UYT) offset -10800
America/Montreal (EDT) offset -14400 (Daylight)
America/Montserrat (AST) offset -14400
America/Nassau (EDT) offset -14400 (Daylight)
America/New_York (EDT) offset -14400 (Daylight)
America/Nipigon (EDT) offset -14400 (Daylight)
America/Nome (AKDT) offset -28800 (Daylight)
America/Noronha (FNT) offset -7200
America/North_Dakota/Center (CDT) offset -18000 (Daylight)
America/North_Dakota/New_Salem (CDT) offset -18000 (Daylight)
America/Ojinaga (MDT) offset -21600 (Daylight)
America/Panama (EST) offset -18000
America/Pangnirtung (EDT) offset -14400 (Daylight)
America/Paramaribo (SRT) offset -10800
America/Phoenix (MST) offset -25200
America/Port-au-Prince (EST) offset -18000
America/Port_of_Spain (AST) offset -14400
America/Porto_Velho (AMT) offset -14400
America/Puerto_Rico (AST) offset -14400
America/Rainy_River (CDT) offset -18000 (Daylight)
America/Rankin_Inlet (CDT) offset -18000 (Daylight)
America/Recife (BRT) offset -10800
America/Regina (CST) offset -21600
America/Resolute (EST) offset -18000
America/Rio_Branco (AMT) offset -14400
America/Santa_Isabel (PDT) offset -25200 (Daylight)
America/Santarem (BRT) offset -10800
America/Santiago (CLT) offset -14400
America/Santo_Domingo (AST) offset -14400
America/Sao_Paulo (BRT) offset -10800
America/Scoresbysund (EGST) offset 0 (Daylight)
America/Shiprock (MDT) offset -21600 (Daylight)
America/St_Barthelemy (AST) offset -14400
America/St_Johns (NDT) offset -9000 (Daylight)
America/St_Kitts (AST) offset -14400
America/St_Lucia (AST) offset -14400
America/St_Thomas (AST) offset -14400
America/St_Vincent (AST) offset -14400
America/Swift_Current (CST) offset -21600
America/Tegucigalpa (CST) offset -21600
America/Thule (ADT) offset -10800 (Daylight)
America/Thunder_Bay (EDT) offset -14400 (Daylight)
America/Tijuana (PDT) offset -25200 (Daylight)
America/Toronto (EDT) offset -14400 (Daylight)
America/Tortola (AST) offset -14400
America/Vancouver (PDT) offset -25200 (Daylight)
America/Whitehorse (PDT) offset -25200 (Daylight)
America/Winnipeg (CDT) offset -18000 (Daylight)
America/Yakutat (AKDT) offset -28800 (Daylight)
America/Yellowknife (MDT) offset -21600 (Daylight)
Antarctica/Casey (AWST) offset 28800
Antarctica/Davis (DAVT) offset 25200
Antarctica/DumontDUrville (DDUT) offset 36000
Antarctica/Macquarie (GMT+11:00) offset 39600
Antarctica/Mawson (MAWT) offset 18000
Antarctica/McMurdo (NZDT) offset 46800 (Daylight)
Antarctica/Palmer (CLT) offset -14400
Antarctica/Rothera (ROTT) offset -10800
Antarctica/South_Pole (GMT+13:00) offset 46800 (Daylight)
Antarctica/Syowa (SYOT) offset 10800
Antarctica/Vostok (VOST) offset 21600
Arctic/Longyearbyen (CEST) offset 7200 (Daylight)
Asia/Aden (AST (Arabian)) offset 10800
Asia/Almaty (EKST) offset 21600
Asia/Amman (EEST) offset 10800 (Daylight)
Asia/Anadyr (ANAST) offset 43200 (Daylight)
Asia/Aqtau (WKST) offset 18000
Asia/Aqtobe (WKST) offset 18000
Asia/Ashgabat (TMT) offset 18000
Asia/Baghdad (AST (Arabian)) offset 10800
Asia/Bahrain (AST (Arabian)) offset 10800
Asia/Baku (AZST) offset 18000 (Daylight)
Asia/Bangkok (ICT) offset 25200
Asia/Beirut (EEST) offset 10800 (Daylight)
Asia/Bishkek (KGT) offset 21600
Asia/Brunei (BNT) offset 28800
Asia/Choibalsan (CHOT) offset 28800
Asia/Chongqing (CST (China)) offset 28800
Asia/Colombo (IST) offset 19800
Asia/Damascus (EEST) offset 10800 (Daylight)
Asia/Dhaka (BDT) offset 21600
Asia/Dili (TLT) offset 32400
Asia/Dubai (GST) offset 14400
Asia/Dushanbe (TJT) offset 18000
Asia/Gaza (EET) offset 7200
Asia/Harbin (CST (China)) offset 28800
Asia/Ho_Chi_Minh (ICT) offset 25200
Asia/Hong_Kong (HKT) offset 28800
Asia/Hovd (HOVT) offset 25200
Asia/Irkutsk (IRKST) offset 32400 (Daylight)
Asia/Jakarta (WIT) offset 25200
Asia/Jayapura (EIT) offset 32400
Asia/Jerusalem (IDT) offset 10800 (Daylight)
Asia/Kabul (AFT) offset 16200
Asia/Kamchatka (PETST) offset 43200 (Daylight)
Asia/Karachi (PKT) offset 18000
Asia/Kashgar (CST (China)) offset 28800
Asia/Kathmandu (NPT) offset 20700
Asia/Katmandu (NPT) offset 20700
Asia/Kolkata (IST) offset 19800
Asia/Krasnoyarsk (KRAST) offset 28800 (Daylight)
Asia/Kuala_Lumpur (MYT) offset 28800
Asia/Kuching (MYT) offset 28800
Asia/Kuwait (AST (Arabian)) offset 10800
Asia/Macau (CST (China)) offset 28800
Asia/Magadan (MAGST) offset 43200 (Daylight)
Asia/Makassar (CIT) offset 28800
Asia/Manila (PHT) offset 28800
Asia/Muscat (GST) offset 14400
Asia/Nicosia (EEST) offset 10800 (Daylight)
Asia/Novokuznetsk (NOVST) offset 25200 (Daylight)
Asia/Novosibirsk (NOVST) offset 25200 (Daylight)
Asia/Omsk (OMSST) offset 25200 (Daylight)
Asia/Oral (WKST) offset 18000
Asia/Phnom_Penh (ICT) offset 25200
Asia/Pontianak (WIT) offset 25200
Asia/Pyongyang (KST) offset 32400
Asia/Qatar (AST (Arabian)) offset 10800
Asia/Qyzylorda (EKST) offset 21600
Asia/Rangoon (MMT) offset 23400
Asia/Riyadh (AST (Arabian)) offset 10800
Asia/Sakhalin (SAKST) offset 39600 (Daylight)
Asia/Samarkand (UZT) offset 18000
Asia/Seoul (KST) offset 32400
Asia/Shanghai (CST (China)) offset 28800
Asia/Singapore (SGT) offset 28800
Asia/Taipei (CST (Taipei)) offset 28800
Asia/Tashkent (UZT) offset 18000
Asia/Tbilisi (GET) offset 14400
Asia/Tehran (IRST) offset 12600
Asia/Thimphu (BTT) offset 21600
Asia/Tokyo (JST) offset 32400
Asia/Ulaanbaatar (ULAT) offset 28800
Asia/Urumqi (CST (China)) offset 28800
Asia/Vientiane (ICT) offset 25200
Asia/Vladivostok (VLAST) offset 39600 (Daylight)
Asia/Yakutsk (YAKST) offset 36000 (Daylight)
Asia/Yekaterinburg (YEKST) offset 21600 (Daylight)
Asia/Yerevan (AMST (Armenia)) offset 18000 (Daylight)
Atlantic/Azores (AZOST) offset 0 (Daylight)
Atlantic/Bermuda (ADT) offset -10800 (Daylight)
Atlantic/Canary (WEST) offset 3600 (Daylight)
Atlantic/Cape_Verde (CVT) offset -3600
Atlantic/Faroe (WEST) offset 3600 (Daylight)
Atlantic/Madeira (WEST) offset 3600 (Daylight)
Atlantic/Reykjavik (GMT) offset 0
Atlantic/South_Georgia (GST (S. Georgia)) offset -7200
Atlantic/St_Helena (GMT) offset 0
Atlantic/Stanley (FKST) offset -10800 (Daylight)
Australia/Adelaide (ACST) offset 34200
Australia/Brisbane (AEST) offset 36000
Australia/Broken_Hill (ACST) offset 34200
Australia/Currie (AEST) offset 36000
Australia/Darwin (ACST) offset 34200
Australia/Eucla (ACWST) offset 31500
Australia/Hobart (AEST) offset 36000
Australia/Lindeman (AEST) offset 36000
Australia/Lord_Howe (LHST) offset 37800
Australia/Melbourne (AEST) offset 36000
Australia/Perth (AWST) offset 28800
Australia/Sydney (AEST) offset 36000
Europe/Amsterdam (CEST) offset 7200 (Daylight)
Europe/Andorra (CEST) offset 7200 (Daylight)
Europe/Athens (EEST) offset 10800 (Daylight)
Europe/Belgrade (CEST) offset 7200 (Daylight)
Europe/Berlin (CEST) offset 7200 (Daylight)
Europe/Bratislava (CEST) offset 7200 (Daylight)
Europe/Brussels (CEST) offset 7200 (Daylight)
Europe/Bucharest (EEST) offset 10800 (Daylight)
Europe/Budapest (CEST) offset 7200 (Daylight)
Europe/Chisinau (EEST) offset 10800 (Daylight)
Europe/Copenhagen (CEST) offset 7200 (Daylight)
Europe/Dublin (IST (Irish)) offset 3600 (Daylight)
Europe/Gibraltar (CEST) offset 7200 (Daylight)
Europe/Guernsey (GMT+01:00) offset 3600 (Daylight)
Europe/Helsinki (EEST) offset 10800 (Daylight)
Europe/Isle_of_Man (GMT+01:00) offset 3600 (Daylight)
Europe/Istanbul (EEST) offset 10800 (Daylight)
Europe/Jersey (GMT+01:00) offset 3600 (Daylight)
Europe/Kaliningrad (EEST) offset 10800 (Daylight)
Europe/Kiev (EEST) offset 10800 (Daylight)
Europe/Lisbon (WEST) offset 3600 (Daylight)
Europe/Ljubljana (CEST) offset 7200 (Daylight)
Europe/London (BST) offset 3600 (Daylight)
Europe/Luxembourg (CEST) offset 7200 (Daylight)
Europe/Madrid (CEST) offset 7200 (Daylight)
Europe/Malta (CEST) offset 7200 (Daylight)
Europe/Mariehamn (EEST) offset 10800 (Daylight)
Europe/Minsk (EEST) offset 10800 (Daylight)
Europe/Monaco (CEST) offset 7200 (Daylight)
Europe/Moscow (MSKS) offset 14400 (Daylight)
Europe/Oslo (CEST) offset 7200 (Daylight)
Europe/Paris (CEST) offset 7200 (Daylight)
Europe/Podgorica (CEST) offset 7200 (Daylight)
Europe/Prague (CEST) offset 7200 (Daylight)
Europe/Riga (EEST) offset 10800 (Daylight)
Europe/Rome (CEST) offset 7200 (Daylight)
Europe/Samara (SAMST) offset 14400 (Daylight)
Europe/San_Marino (CEST) offset 7200 (Daylight)
Europe/Sarajevo (CEST) offset 7200 (Daylight)
Europe/Simferopol (EEST) offset 10800 (Daylight)
Europe/Skopje (CEST) offset 7200 (Daylight)
Europe/Sofia (EEST) offset 10800 (Daylight)
Europe/Stockholm (CEST) offset 7200 (Daylight)
Europe/Tallinn (EEST) offset 10800 (Daylight)
Europe/Tirane (CEST) offset 7200 (Daylight)
Europe/Uzhgorod (EEST) offset 10800 (Daylight)
Europe/Vaduz (CEST) offset 7200 (Daylight)
Europe/Vatican (CEST) offset 7200 (Daylight)
Europe/Vienna (CEST) offset 7200 (Daylight)
Europe/Vilnius (EEST) offset 10800 (Daylight)
Europe/Volgograd (VOLST) offset 14400 (Daylight)
Europe/Warsaw (CEST) offset 7200 (Daylight)
Europe/Zagreb (CEST) offset 7200 (Daylight)
Europe/Zaporozhye (EEST) offset 10800 (Daylight)
Europe/Zurich (CEST) offset 7200 (Daylight)
GMT (GMT+00:00) offset 0
Indian/Antananarivo (EAT) offset 10800
Indian/Chagos (IOT) offset 21600
Indian/Christmas (CXT) offset 25200
Indian/Cocos (CCT) offset 23400
Indian/Comoro (EAT) offset 10800
Indian/Kerguelen (TFT) offset 18000
Indian/Mahe (SCT) offset 14400
Indian/Maldives (MVT) offset 18000
Indian/Mauritius (MUT) offset 14400
Indian/Mayotte (EAT) offset 10800
Indian/Reunion (RET) offset 14400
Pacific/Apia (SST) offset -39600
Pacific/Auckland (NZDT) offset 46800 (Daylight)
Pacific/Chatham (CHADT) offset 49500 (Daylight)
Pacific/Chuuk (TRUT) offset 36000
Pacific/Easter (EAST) offset -21600
Pacific/Efate (VUT) offset 39600
Pacific/Enderbury (PHOT) offset 46800
Pacific/Fakaofo (TKT) offset -36000
Pacific/Fiji (FJT) offset 43200
Pacific/Funafuti (TVT) offset 43200
Pacific/Galapagos (GALT) offset -21600
Pacific/Gambier (GAMT) offset -32400
Pacific/Guadalcanal (SBT) offset 39600
Pacific/Guam (ChST) offset 36000
Pacific/Honolulu (HST) offset -36000
Pacific/Johnston (HST) offset -36000
Pacific/Kiritimati (LINT) offset 50400
Pacific/Kosrae (KOST) offset 39600
Pacific/Kwajalein (MHT) offset 43200
Pacific/Majuro (MHT) offset 43200
Pacific/Marquesas (MART) offset -34200
Pacific/Midway (SST) offset -39600
Pacific/Nauru (NRT) offset 43200
Pacific/Niue (NUT) offset -39600
Pacific/Norfolk (NFT) offset 41400
Pacific/Noumea (NCT) offset 39600
Pacific/Pago_Pago (SST) offset -39600
Pacific/Palau (PWT) offset 32400
Pacific/Pitcairn (PNT) offset -28800
Pacific/Pohnpei (PONT) offset 39600
Pacific/Ponape (PONT) offset 39600
Pacific/Port_Moresby (PGT) offset 36000
Pacific/Rarotonga (CKT) offset -36000
Pacific/Saipan (ChST) offset 36000
Pacific/Tahiti (TAHT) offset -36000
Pacific/Tarawa (GILT) offset 43200
Pacific/Tongatapu (TOT) offset 46800
Pacific/Truk (TRUT) offset 36000
Pacific/Wake (WAKT) offset 43200
Pacific/Wallis (WFT) offset 43200
下面打印出上面的缩写对应的时区全称:
for (id obj in [NSTimeZone abbreviationDictionary]) {
NSTimeZone *zone = [NSTimeZone timeZoneWithAbbreviation:obj];
NSLog(@"%@ 对应 %@", obj, zone);
}