[iOS,Objective-C]言語ごとの通貨記号などロケール情報を調べる方法
国ごとに決められた通貨記号や日付の書式などのルールを「ロケール」といいますが、iOSにおいては「NSLocale」クラスがその役割を担います。
NSLocaleクラスではISOによって決められた国コード(ISO3166-1)と言語コード(ISO639)を組み合わせたロケールコードを指定してインスタンスを取得すると、その国のロケール情報をゲットできるようになります。
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
ロケールコードのリストはSupported Locales (英語)が分かりやすいでしょう。
objectForKeyメソッドで各情報を取得
ロケールインスタンスを取得後は、objectForKeyメソッドで以下の表にあるキーを使って通貨単位などの情報を取得できます。
[locale objectForKey:NSLocaleCurrencySymbol];
キー名と情報の対応表
項目 | キー名 | 日本語 | 英語 | イタリア語 |
---|---|---|---|---|
ロケールID | NSLocaleIdentifier | ja_JP | en_US | it_IT |
言語コード | NSLocaleLanguageCode | ja_JP | en_US | it_IT |
国コード | NSLocaleCountryCode | JP | US | IT |
スクリプトコード | NSLocaleScriptCode | (null) | (null) | (null) |
旧通貨用付加コード | NSLocaleVariantCode | (null) | (null) | (null) |
見本文字セット | NSLocaleExemplarCharacterSet | ※1 | ※1 | ※1 |
カレンダー | NSLocaleCalendar | ※2 | ※2 | ※2 |
照合順序 | NSLocaleCollationIdentifier | (null) | (null) | (null) |
メートル法採用かどうか | NSLocaleUsesMetricSystem | 1 | 0 | 1 |
測量システム | NSLocaleMeasurementSystem | Metric | U.S. | Metric |
小数点文字 | NSLocaleDecimalSeparator | . | . | , |
桁区切り文字 | NSLocaleGroupingSeparator | , | , | . |
通貨単位文字 | NSLocaleCurrencySymbol | ¥ | $ | € |
通貨コード | NSLocaleCurrencyCode | JPY | USD | EUR |
照合ID | NSLocaleCollatorIdentifier | ja_JP | en_US | it_IT |
クォート開始文字 | NSLocaleQuotationBeginDelimiterKey | 「 | “ | ‘ |
クォート終了文字 | NSLocaleQuotationEndDelimiterKey | 」 | “ | ‘ |
クォート開始文字(代替) | NSLocaleAlternateQuotationBeginDelimiterKey | 『 | ‘ | “ |
クォート終了文字(代替) | NSLocaleAlternateQuotationEndDelimiterKey | 』 | ‘ | “ |
- ※1: NSCFCharacterSet インスタンス
- ※2: NSCFCalendar インスタンス
これらのデータをNSLogメソッドで一覧出力するコードを用意したので、必要な方はコピペして使ってください。 最初のinitWithLocaleIdentifierメソッドのパラメーターに調べたいロケールコードを指定すればOKです。
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"ja_JP"]; NSLog(@"NSLocaleIdentifier: %@", [locale objectForKey:NSLocaleIdentifier]); NSLog(@"NSLocaleLanguageCode: %@", [locale objectForKey:NSLocaleIdentifier]); NSLog(@"NSLocaleCountryCode: %@", [locale objectForKey:NSLocaleCountryCode]); NSLog(@"NSLocaleScriptCode: %@", [locale objectForKey:NSLocaleScriptCode]); NSLog(@"NSLocaleVariantCode: %@", [locale objectForKey:NSLocaleVariantCode]); NSLog(@"NSLocaleExemplarCharacterSet: %@", [locale objectForKey:NSLocaleExemplarCharacterSet]); NSLog(@"NSLocaleCalendar: %@", [locale objectForKey:NSLocaleCalendar]); NSLog(@"NSLocaleCollationIdentifier: %@", [locale objectForKey:NSLocaleCollationIdentifier]); NSLog(@"NSLocaleUsesMetricSystem: %@", [locale objectForKey:NSLocaleUsesMetricSystem]); NSLog(@"NSLocaleMeasurementSystem: %@", [locale objectForKey:NSLocaleMeasurementSystem]); NSLog(@"NSLocaleDecimalSeparator: %@", [locale objectForKey:NSLocaleDecimalSeparator]); NSLog(@"NSLocaleGroupingSeparator: %@", [locale objectForKey:NSLocaleGroupingSeparator]); NSLog(@"NSLocaleCurrencySymbol: %@", [locale objectForKey:NSLocaleCurrencySymbol]); NSLog(@"NSLocaleCurrencyCode: %@", [locale objectForKey:NSLocaleCurrencyCode]); NSLog(@"NSLocaleCollatorIdentifier: %@", [locale objectForKey:NSLocaleCollatorIdentifier]); NSLog(@"NSLocaleQuotationBeginDelimiterKey: %@", [locale objectForKey:NSLocaleQuotationBeginDelimiterKey]); NSLog(@"NSLocaleQuotationEndDelimiterKey: %@", [locale objectForKey:NSLocaleQuotationEndDelimiterKey]); NSLog(@"NSLocaleAlternateQuotationBeginDelimiterKey: %@", [locale objectForKey:NSLocaleAlternateQuotationBeginDelimiterKey]); NSLog(@"NSLocaleAlternateQuotationEndDelimiterKey: %@", [locale objectForKey:NSLocaleAlternateQuotationEndDelimiterKey]); [locale release];
IOS FACTORY(IOS FACTORY) リールオイル IOS-01PRO IOS-01PRO
7% オフ10ml 非ニュートン系添加剤入り、ベイトリールならワンランクUPの飛距離! 各種高性能をオールシーズン長期に渡りキープ! リカバリー機能 有機溶剤ゼロ! フロン&有機ガスゼロ! で人体にも環境にも優しい イージーピンスポット注油、高気密容器 専用ノズル付瓶
IOSファクトリー FACTORY(IOS FACTORY) リールオイル IOS-02PRO
10ml ●ハイレベルアングラーの高い要求を驚異的なポテンシャルで形にした非ニュートン系粘弾性化学合成リールオイルがIOSオイルです 。●※非ニュートン系とは・・・液体は高速で回転するものに触れると 遠心力で弾かれ、周囲には空間ができます。その物理の法則に逆らって回転する物体に絡みつき、駆け上がっていく液体があります。この特性はニュートンの法則に逆らうことから「非ニュートン系粘弾性」と呼ばれています。 。●IOSオイルはベイトリールの軸受けベアリングに塗布すると飛距離向上が長期に渡り継続します。... もっと読む
FONLAM Switch対応 コントローラー PC/Android/iOSも全対応 背面ボタン マクロ対応 ゲームパッド Switch2/OLED/Liteも対応 ゲームコン Bluetooth接続 手動/自動連射 振動/連射スピード調整 スリープ復帰 レイアウト切替(マカロン紫)
¥2,999 (2025-08-21 04:50 GMT +09:00 時点 - 詳細はこちら価格および発送可能時期は表示された日付/時刻の時点のものであり、変更される場合があります。本商品の購入においては、購入の時点で当該の Amazon サイトに表示されている価格および発送可能時期の情報が適用されます。)🎮【2つ背面ボタン付き】操作を完全再現できる。押し感が良い背面ボタン2つ付き、一つボタンに最大30秒、24つボタンの連続操作を自由設定が可能で、オリジナル裏技を記憶できます。それに背面ボタンをON/OFFするスイッチがついています、使用しない場合、OFFに設置して、誤操作が予防できます。 🎮【幅広い交換性】Switch/IOS13・14/アンドロイド/PCなど多種機種対応できます。【最新ios対応】ios13~14及びその以降のバージョン対応、COD、FORTNITE、マイクラ認定ゲームパッド。... もっと読む
2011-12-07