前述のTZInfoは各種タイムゾーン情報を格納しています。
なので、カントリーコードもメソッドで一気に出力させることができます。
ap TZInfo::Country.all_codes, limit:true
とやれば、
[
[ 0] "AD",
[ 1] "AE",
[ 2] "AF",
[ 3] .. [245],
[246] "ZA",
[247] "ZM",
[248] "ZW"
]
とでてきます。
また、カントリーコードから現地時刻を取得することも可能です。
アメリカのように国土が広大だと対応し辛いようですが……
tz = TZInfo::Country.get('ZA') TZInfo::Timezone.get(tz.zone_identifiers[0]).now
とやれば
#>> 2015-04-02 16:53:33 UTC