クロックに独自クラスを導入する(6)

2010. 06. 06
クロックに独自クラスを導入する(5)』で納まらなかったタイムゾーンの一覧表の続きです。

タイムゾーン地域名地域名
略語
夏時間
0コートジボワールAfrica/Abidjan-
ガーナAfrica/Accra-
マリAfrica/Bamako-
ガンビアAfrica/Banjul-
ギニアビサウAfrica/Bissau-
モロッコAfrica/Casablanca-
ギニアAfrica/Conakry-
セネガルAfrica/Dakar-
西サハラAfrica/El_Aaiun-
シエラレオネAfrica/Freetown-
トーゴAfrica/Lome-
リベリアAfrica/Monrovia-
モーリタニアAfrica/Nouakchott-
ブルキナファソAfrica/Ouagadougou-
サントメ・プリンシペAfrica/Sao_Tome-
グリーンランド (デンマークシャウン)America/Danmarkshavn-
スペイン (カナリア諸島)Atlantic/Canary
フェロー諸島Atlantic/Faroe
ポルトガル (マデイラ)Atlantic/Madeira
アイスランドAtlantic/Reykjavik-
セントヘレナAtlantic/St_Helena-
アイルランドEurope/Dublin
ガーンジーEurope/Guernsey
マン島Europe/Isle_of_Man
ジャージーEurope/Jersey
ポルトガル (ヨーロッパ/リスボン)Europe/Lisbon
WET/WEST
イギリスEurope/London
BST
GMT+00:00UTC
UTC/GMT
-
-1グリーンランド (スコレスビスン)America/Scoresbysund
ポルトガル (アゾレス諸島)Atlantic/Azores
カーボベルデAtlantic/Cape_Verde-
-2ブラジル (ノロニャ)America/Noronha-
南ジョージア島・南サンドイッチ諸島Atlantic/South_Georgia-
-3ブラジル (アラグァイナ)America/Araguaina-
アルゼンチン (ブエノスアイレス)America/Argentina/Buenos_Aires
ART
-
アルゼンチン (カタマルカ)America/Argentina/Catamarca-
アルゼンチン (コルドバ)America/Argentina/Cordoba-
アルゼンチン (フフイ)America/Argentina/Jujuy-
アルゼンチン (ラリオハ)America/Argentina/La_Rioja-
アルゼンチン (メンドーサ)America/Argentina/Mendoza-
アルゼンチン (リオガイェゴス)America/Argentina/Rio_Gallegos-
GMT-03:00America/Argentina/Salta-
アルゼンチン (サンファン)America/Argentina/San_Juan-
アルゼンチン (トゥクマン)America/Argentina/Tucuman-
アルゼンチン (ウスアイア)America/Argentina/Ushuaia-
ブラジル (バイーア)America/Bahia-
ブラジル (ベレン)America/Belem-
仏領ギアナAmerica/Cayenne-
ブラジル (フォルタレザ)America/Fortaleza-
グリーンランド (アメリカ/ゴッドホープ)America/Godthab
ブラジル (マセイオ)America/Maceio-
サンピエール島・ミクロン島America/Miquelon
ウルグアイAmerica/Montevideo
スリナムAmerica/Paramaribo-
ブラジル (レシフェ)America/Recife-
ブラジル (Santarem)America/Santarem-
ブラジル (サンパウロ)America/Sao_Paulo
BRT/BRST
南極大陸 (ロデラ)Antarctica/Rothera-
-3:30カナダ (セントジョンズ)America/St_Johns
-4アンギラAmerica/Anguilla-
アンティグア・バーブーダAmerica/Antigua-
アルゼンチン (サンルイス)America/Argentina/San_Luis
アルバ島America/Aruba-
パラグアイAmerica/Asuncion
バルバドスAmerica/Barbados-
カナダ (ブラン・サブロン)America/Blanc-Sablon-
ブラジル (ボアビスタ)America/Boa_Vista-
ブラジル (カンポグランデ)America/Campo_Grande
ブラジル (クイアバ)America/Cuiaba
オランダ領アンティル諸島America/Curacao-
ドミニカ国America/Dominica-
ブラジル (エイルネペ)America/Eirunepe-
カナダ (グレースベイ)America/Glace_Bay
カナダ (グースベイ)America/Goose_Bay
グレナダAmerica/Grenada-
グアドループAmerica/Guadeloupe-
ガイアナAmerica/Guyana-
カナダ (ハリファクス)America/Halifax
AST/ADT
ボリビアAmerica/La_Paz-
ブラジル (マナウス)America/Manaus-
セント・マーチンAmerica/Marigot-
マルティニーク島America/Martinique-
カナダ (モンクトン)America/Moncton
モントセラト島America/Montserrat-
トリニダード・トバゴAmerica/Port_of_Spain-
ブラジル (ポルトベーリョ)America/Porto_Velho-
プエルトリコAmerica/Puerto_Rico-
ブラジル (リオブランコ)America/Rio_Branco-
チリ (アメリカ/サンチアゴ)America/Santiago
CLT/CLST
ドミニカ共和国America/Santo_Domingo-
サン・バルテルミーAmerica/St_Barthelemy-
セントクリストファー・ネイビスAmerica/St_Kitts-
セントルシアAmerica/St_Lucia-
アメリカ領ヴァージン諸島America/St_Thomas-
セントビンセント・グレナディーン諸島America/St_Vincent-
グリーンランド (チューレ)America/Thule
イギリス領ヴァージン諸島America/Tortola-
南極大陸 (パーマー)Antarctica/Palmer
バミューダAtlantic/Bermuda
フォークランド諸島Atlantic/Stanley
-4:30ベネズエラAmerica/Caracas-
-5カナダ (コーラルハーバー)America/Atikokan-
コロンビアAmerica/Bogota
COT
-
ケイマン諸島America/Cayman-
アメリカ合衆国 (デトロイト)America/Detroit
タークス諸島・カイコス諸島America/Grand_Turk
エクアドル (アメリカ/グアヤキル)America/Guayaquil-
キューバAmerica/Havana
アメリカ合衆国 (インディアナポリス)America/Indiana/Indianapolis
アメリカ合衆国 (インディアナ州マレンゴ)America/Indiana/Marengo
アメリカ合衆国
(インディアナ州ピーターズバーグ)
America/Indiana/Petersburg
アメリカ合衆国 (インディアナ州ビベー)America/Indiana/Vevay
アメリカ合衆国
(インディアナ州ビンセンス)
America/Indiana/Vincennes
アメリカ合衆国
(インディアナ州ウィナマック)
America/Indiana/Winamac
カナダ (イカルイット)America/Iqaluit
ジャマイカAmerica/Jamaica-
アメリカ合衆国 (ルイスビル)America/Kentucky/Louisville
アメリカ合衆国
(ケンタッキー州モンティチェロ)
America/Kentucky/Monticello
ペルーAmerica/Lima
PET
-
カナダ (モントリオール)America/Montreal
バハマAmerica/Nassau
アメリカ合衆国 (ニューヨーク)America/New_York
EST/EDT
カナダ (ニピゴン)America/Nipigon
パナマAmerica/Panama-
カナダ (パンナータング)America/Pangnirtung
ハイチAmerica/Port-au-Prince-
カナダ (レソリュート)America/Resolute-
カナダ (サンダーベイ)America/Thunder_Bay
カナダ (トロント)America/Toronto
-6ベリーズAmerica/Belize-
メキシコ (カンクン)America/Cancun
アメリカ合衆国 (シカゴ)America/Chicago
CST/CDT
コスタリカAmerica/Costa_Rica-
エルサルバドルAmerica/El_Salvador-
グアテマラAmerica/Guatemala-
アメリカ合衆国 (インディアナ州ノックス)America/Indiana/Knox
アメリカ合衆国
(インディアナ州テルシティ)
America/Indiana/Tell_City
ニカラグアAmerica/Managua-
GMT+00:00America/Matamoros
アメリカ合衆国 (メノミニー)America/Menominee
メキシコ (メリダ)America/Merida
メキシコ (メキシコシティー)America/Mexico_City
メキシコ (モンテレイ)America/Monterrey
アメリカ合衆国 (ノースダコタ州センター)America/North_Dakota/Center
アメリカ合衆国
(ノースダコタ州ニューセーラム)
America/North_Dakota/New_Salem
カナダ (レイニーリバー)America/Rainy_River
カナダ (ランキン湾)America/Rankin_Inlet
カナダ (レジャイナ)America/Regina-
カナダ (スウィフトカレント)America/Swift_Current-
ホンジュラスAmerica/Tegucigalpa-
カナダ (ウィニペグ)America/Winnipeg
チリ (イースター島)Pacific/Easter
エクアドル (ガラパゴス)Pacific/Galapagos-
-7アメリカ合衆国 (ボイシ)America/Boise
カナダ (ケンブリッジベイ)America/Cambridge_Bay
メキシコ (チワワ)America/Chihuahua
カナダ (ドーソンクリーク)America/Dawson_Creek-
アメリカ合衆国 (デンバー)America/Denver
MST/MDT
カナダ (エドモントン)America/Edmonton
メキシコ (エルモシヨ)America/Hermosillo-
カナダ (イヌヴィク)America/Inuvik
メキシコ (マサトラン)America/Mazatlan
GMT+00:00America/Ojinaga
アメリカ合衆国 (フェニックス)America/Phoenix-
アメリカ合衆国 (シップロック)America/Shiprock
カナダ (イエローナイフ)America/Yellowknife
-8カナダ (ドーソン)America/Dawson
アメリカ合衆国 (ロサンゼルス)America/Los_Angeles
PST/PDT
GMT+00:00America/Santa_Isabel
メキシコ (ティフアナ)America/Tijuana
カナダ (バンクーバー)America/Vancouver
カナダ (ホワイトホース)America/Whitehorse
ピトケアン島Pacific/Pitcairn-
-9アメリカ合衆国 (アンカレッジ)America/Anchorage
アメリカ合衆国 (ジュノー)America/Juneau
AKST/AKDT
アメリカ合衆国 (ノーメ)America/Nome
アメリカ合衆国 (ヤクタット)America/Yakutat
仏領ポリネシア (ガンビア)Pacific/Gambier-
-9:30仏領ポリネシア (マルケサス)Pacific/Marquesas-
-10アメリカ合衆国 (アダック)America/Adak
トケラウ諸島Pacific/Fakaofo-
アメリカ合衆国 (ホノルル)Pacific/Honolulu
HST
-
米領太平洋諸島 (ジョンストン)Pacific/Johnston-
クック諸島Pacific/Rarotonga-
仏領ポリネシア (太平洋/タヒチ)Pacific/Tahiti-
-11サモアPacific/Apia-
米領太平洋諸島 (ミッドウェー)Pacific/Midway-
ニウエ島Pacific/Niue-
米領サモアPacific/Pago_Pago-


・夏時間の表記について

-:夏時間対象外
●:北半球の夏時間対象地域
○:南半球の夏時間対象地域

注:対象地域の判別は、iPhone Simulator(3.1.3)での実行結果を元にしており、現実世界の現在の状況と一部異なっています。


・iPhone Simulator(3.1.3)での動作と現実との差異

『ロシア(アナジル)』と『ロシア(カムチャッカ)』は、Simulatorでは+12となっていますが、2010年3月28日に属していたカムチャッカ時間帯が廃止され、マガダン時間帯に統合されたため、現実には+11になっています。

同様に『ロシア(サマラ)』がSimulatorでは+4ですが、サマラ時間帯がモスクワ時間帯に統合されたため、現実には+3になっています。

また、バングラデシュ(+6)とパキスタン(+5)に夏時間が採用されていますが、現実には2010年は夏時間が採用されていません。


・夏時間採用地域のabbreviationDictionaryの略字指定について

夏時間を採用している地域では、abbreviationDictionaryの略字が異なります。

例えば太平洋標準時(西海岸標準時)の場合、PST(Pacific Standard Time)とPDT(Pacific Daylight Time)の2つになっています。

ただ夏時間の調整は時計から判別しているらしく、どちらを指定しても正常に(現在であれば夏時間に対応して)表示されます。


・略字の対応表

タイム
ゾーン
地域名地域名略語夏時間
+12ニュージーランド
(太平洋/オークランド)
Pacific/AucklandNZST : New Zealand Standard Time
NZDT : New Zealand Daylight Time
+9大韓民国Asia/SeoulKST : Korea Standard Time-
JSTAsia/TokyoJST : Japan Standard Time-
+8中華人民共和国
香港特別行政区
Asia/Hong_KongHKT : Hong Kong Time-
フィリピンAsia/ManilaPHT : Philippines Time-
シンガポールAsia/SingaporeSGT : Singapore Time-
+7タイAsia/BangkokICT : Indochina Time-
インドネシア
(ジャカルタ)
Asia/JakartaWIT : Western Indonesian Time-
+6バングラデシュAsia/DhakaBDT : Bangladesh Time
+5:30インドAsia/KolkataIST : Indian Standard Time-
+5パキスタンAsia/KarachiPKT : Pakistan Time
+4アラブ首長国連邦Asia/DubaiGST : Gulf Standard Time-
+3:30イランAsia/TehranIRST : Iran Standard Time
+3エチオピアAfrica/Addis_AbabaEAT : East Africa Time-
ロシア
(モスクワ)
Europe/MoscowMSK : Moscow Standard Time
MSD : Moscow Daylight Time
+2ジンバブエAfrica/HarareCAT : Central Africa Time-
トルコEurope/IstanbulEET : Eastern Europe Time
EEST : Eastern Europe Summer Time
+1ナイジェリアAfrica/LagosWAT : West Africa Time-
フランスEurope/ParisCET : Central European Time
CEST : Central European Summer Time
0ポルトガル
(ヨーロッパ/リスボン)
Europe/LisbonWET : Western European Time
WEST : Western European Summer Time
イギリスEurope/LondonBST : British Summer Time
GMT+00:00UTCUTC : Universal Time, Coordinated
GMT : Greenwich Mean Time
-
-3アルゼンチン
(ブエノスアイレス)
America/Argentina
/Buenos_Aires
ART : Argentina Time-
ブラジル
(サンパウロ)
America/Sao_PauloBRT : Brazilian Time
BRST : Brazilian Summer Time
-4カナダ
(ハリファクス)
America/HalifaxAST : Atlantic Standard Time
ADT : Atlantic Daylight Time
チリ
(アメリカ/サンチアゴ)
America/SantiagoCLT : Chile Time
CLST : Chile Summer Time
-5コロンビアAmerica/BogotaCOT : Colombia Time-
ペルーAmerica/LimaPET : Peru Time-
アメリカ合衆国
(ニューヨーク)
America/New_YorkEST : Eastern Standard Time
EDT : Eastern Daylight Time
-6アメリカ合衆国
(シカゴ)
America/ChicagoCST : Central Standard Time
CDT : Central Daylight Time
-7アメリカ合衆国
(デンバー)
America/DenverMST : Mountain Standard Time
MDT : Mountain Daylight Time
-8アメリカ合衆国
(ロサンゼルス)
America/Los_AngelesPST : Pacific Standard Time
PDT : Pacific Daylight Time
-9アメリカ合衆国
(ジュノー)
America/JuneauAKST : Alaska Standard Time
AKDT : Alaska Daylight Time
-10アメリカ合衆国
(ホノルル)
Pacific/HonoluluHST : Hawaii Standard Time-


●実行結果

『ビルドと実行』をすると下図のようになります。

387

●補足事項

気付いている方もいらっしゃると思いますが、このプログラムの場合、専用初期化メソッドとして設定したinitWithTimeZone:ではなく、汎用初期化メソッドのinitで初期化しています。

理由はinitWithTimeZone:を呼び出すclockWithTimeZone:を呼んでいないからです。



参考文献

NSTimeZone Class Reference

Date and Time Programming Guide

Wikipedia/標準時

Wikipedia/グリニッジ標準時

Wikipedia/協定世界時

Wikipedia/ロシア時間

World Time Clock & Map

基礎からのiOS SDK基礎からのiOS SDK
(2010/10/09)
鶴薗 賢吾、松浦 健一郎 他

商品詳細を見る

詳解 Objective-C 2.0 第3版詳解 Objective-C 2.0 第3版
(2011/12/28)
荻原 剛志

商品詳細を見る






コンパニオン20
0 Comments
Leave a comment
管理者にだけ表示を許可する
Top
0 Trackbacks
Top
Calendar
03 | 2017/04 | 05
Sun Mon Tue Wed Thu Fri Sat
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 - - - - - -
Recent Articles
iTunes


Swift
Categories
Tips
Profile

水月杏香

Author:水月杏香
永遠の初心者プログラマ。

Wish List
WACOM


ARC
Technical Q&A
情報プロパティリストキー
Start Developing iOS Apps Today
BOSE

コンパニオン20
Reference
NSApplicationDelegateプロトコル
NSArrayクラス
NSAutoreleasePoolクラス
NSBundleクラス
NSBundle UIKit追加分
NSCalendarクラス
NSCoderクラス
NSCodingプロトコル
NSCopyingプロトコル
NSDataクラス
NSDateクラス
NSDateFormatterクラス
NSDictionaryクラス
NSEntityDescriptionクラス
NSEnumeratorクラス
NSErrorクラス
NSExceptionクラス
NSFetchRequestクラス
NSFileHandleクラス
NSFileManagerクラス
NSIndexPathクラス
NSIndexPath UIKit追加分
NSKeyedArchiverクラス
NSKeyedUnarchiverクラス
NSKeyValueCodingプロトコル
NSLocaleクラス
NSManagedObjectクラス
NSManagedObjectContextクラス
NSManagedObjectModelクラス
NSMutableArrayクラス
NSMutableCopyingプロトコル
NSMutableDictionaryクラス
NSMutableSetクラス
NSNotificationクラス
NSNotificationCenterクラス
NSNullクラス
NSNumberクラス
NSObjectクラス
NSObject UIKit追加分
NSObjectプロトコル
NSPersistentStoreクラス
NSPersistentStoreCoordinatorクラス
NSPredicateクラス
NSPropertyListSerializationクラス
NSRunLoopクラス
NSSetクラス
NSStringクラス
NSString UIKit追加分
NSTimerクラス
NSTimeZoneクラス
NSURLクラス
NSURLProtectionSpaceクラス
NSURLRequestクラス
NSUserDefaultsクラス
NSValueクラス

UIActionSheetクラス
UIActionSheetDelegateプロトコル
UIActivityIndicatorViewクラス
UIAlertViewクラス
UIAlertViewDelegateプロトコル
UIApplicationクラス
UIApplicationDelegateプロトコル
UIBarButtonItemクラス
UIBarItemクラス
UIButtonクラス
UIColorクラス
UIControlクラス
UIDatePickerクラス
UIDeviceクラス
UIEventクラス
UIFontクラス
UIGestureRecognizerクラス
UIImageクラス
UIImageViewクラス
UIKit Function
UILabelクラス
UINavigationControllerクラス
UINavigationItemクラス
UIPickerViewクラス
UIPickerViewDataSourceプロトコル
UIPickerViewDelegateプロトコル
UIPinchGestureRecognizerクラス
UIResponderクラス
UIScreenクラス
UIScrollViewクラス
UISearchBarクラス
UISearchBarDelegateプロトコル
UISegmentedControlクラス
UISliderクラス
UISwipeGestureRecognizerクラス
UISwitchクラス
UITableViewクラス
UITableViewCellクラス
UITableViewControllerクラス
UITableViewDataSourceプロトコル
UITableViewDelegateプロトコル
UITapGestureRecognizerクラス
UITextFieldクラス
UITextFieldDelegateプロトコル
UITextInputTraitsプロトコル
UITextViewクラス
UITextViewDelegateプロトコル
UIToolbarクラス
UITouchクラス
UIViewクラス
UIViewControllerクラス
UIWebViewクラス
UIWebViewDelegateプロトコル
UIWindowクラス

AVAudioPlayerクラス
AVAudioPlayerDelegateプロトコル

CADisplayLinkクラス
CAEAGLLayerクラス
CALayerクラス

CGAffineTransform
CGBitmapContext
CGColor
CGColorSpace
CGContext
CGGeometry
CGImage
CGPath

EAGLContextクラス
EAGLDrawableプロトコル

Foundation Constants
Foundation Data Types
Foundation Functions

MPMediaItemクラス
MPMediaItemArtworkクラス
MPMediaPlaylistクラス
MPMediaPropertyPredicateクラス
MPMediaQueryクラス
MPMusicPlayerControllerクラス

Randomization Services

System Sound Services
Amazon


OpenGL ES
SQLite
Monthly Archives
Recent Comments
Recent TrackBacks
RSS Link
Visitors
QR Code
QR