INDEX>Foundation>NSLocale
解説
ロケールクラス
ブラウン オーラルB プラックコントロール DB4510NE 電動歯ブラシ 乾電池式
- 出版社/メーカー: BRAUN(ブラウン)
- メディア: ホーム&キッチン
- 購入: 11人 クリック: 26回
- この商品を含むブログ (1件) を見る
継承 | NSObject |
準拠 | NSObject (NSObject) |
フレームワーク | /System/Library/Frameworks/Foundation.framework |
使用可能 | OS X v10.4以降 |
iOS 2.0以降 | |
定義 | NSLocale.h |
概要
ロケールは言語や文化、規則や規格など、地域などによって使われている情報をまとめたものです。たとえば日付の表記や使用言語などは地域によって違いますし、なかには小数点や桁区切りの記号が違う地域もあります。
C言語のフレームワークである、Core FoundationのCFLocaleRefとトールフリーブリッジです。ARC環境以外ではそのまま使用できます。
どちらかのフレームワークにしかないメソッド・関数を使いたい場合、キャストして使うことが出来ます。
ARC環境では、管理対象のオブジェクトキャストに__bridge、__bridge_retained、__bridge_transferが必要になります。
ロケールの取得と初期化
システムのロケールを取得するには(+ systemLocale)メソッドを使用します。
現在のロケールを取得するには(+ currentLocale)メソッドを使用します。現在のロケールを取得する方法はもう一つ(+ autoupdatingCurrentLocale)メソッドを使う方法があります。
両方とも取得した時は同じなのですが、+ autoupdatingCurrentLocaleの方は使用途中で設定変更(環境設定アプリの一般>言語環境>書式を変える)した場合に自動的に現在のロケールに変わるようになっています。
初期化方法では、allocで作成した後(– initWithLocaleIdentifier)メソッドで初期化する方法があります。
ロケールについての情報を取得
キーとロケール情報で特定の情報を得るには(– displayNameForKey:value)メソッドを使用します。
ja-JPのようなロケールIDを取得するには(– localeIdentifier)メソッドを使用します。
指定したキーで情報を取得するには(– objectForKey)メソッドを使用します。キーにNSLocaleLanguageCodeを渡してやることで、"ja"のような言語コードが取得できます。
キーについて
●NSLocaleIdentifier
ID
ja-JPではja-JPになっています。
●NSLocaleLanguageCode
言語コード
ja-JPではjaになっています。
●NSLocaleCountryCode
国コード
ja-JPではJPになっています。
●NSLocaleScriptCode
スクリプトコード
ja-JPでの設定はありません。中国語(簡体字)ではHansなどが登録されています。
●NSLocaleVariantCode
たった一つだけ登録されています
英語(アメリカ合衆国,コンピュータ) POSIX
●NSLocaleExemplarCharacterSet
基本の文字セット
ja-JPでは2130文字が登録されています。
●NSLocaleCalendar
使用するカレンダー NSCalendar
ja-JPではgregorianになっています。
●NSLocaleCollationIdentifier
設定されているロケールはありません。
●NSLocaleUsesMetricSystem;
メートル法を使うかどうかのNSNumberのBOOL値
ja-JPではYESになっています。
●NSLocaleMeasurementSystem
単位法
ja-JPではMetric(メートル法)になっています。他にはU.S.が数カ国
●NSLocaleDecimalSeparator
小数点記号
ja-JPでは"."となっています。","になっているロケールも多数あります。
●NSLocaleGroupingSeparator
桁区切り記号
ja-JPでは","となっています。
●NSLocaleCurrencySymbol
通貨記号
ja-JPでは"¥"となっています。
●NSLocaleCurrencyCode
通貨コード
ja-JPでは"JPY"となっています。
●NSLocaleCollatorIdentifier
まとめたID
ja-JPでは"ja-JP"となっています。
●NSLocaleQuotationBeginDelimiterKey
引用符(始まり)
ja-JPでは"「"となっています。
●NSLocaleQuotationEndDelimiterKey
引用符(終わり)
ja-JPでは"」"となっています。
●NSLocaleAlternateQuotationBeginDelimiterKey
代替引用符(始まり)
ja-JPでは"『"となっています。
●NSLocaleAlternateQuotationEndDelimiterKey
代替引用符(終わり)
ja-JPでは"』"となっています。
システムのロケール情報
システムで現在有効なロケールのID(ja-JPのような言語コードと国コードを合わせたもの)の一覧を取得するには(+ availableLocaleIdentifiers)メソッドを使用します。
システムが持つISO国コード(JPのような2文字の英数大文字のコード)の一覧を取得するには(+ ISOCountryCodes)メソッドを使用します。システムが持つISO通貨コードの一覧を取得するには(+ ISOCurrencyCodes)メソッドを使用します。
システムが持つISO言語コード(jpのような2~3文字からからなるコード)の一覧を取得するには(+ ISOLanguageCodes)メソッドを使用します。
システムが持つISO通貨コード(JPYのような3文字の英数大文字のコード)の一覧を取得するには(+ commonISOCurrencyCodes)メソッドを使用します。
ID間の変換
指定したIDから正規のIDに変換するには(+ canonicalLocaleIdentifierFromString)メソッドを使用します。JA-JPと大文字と小文字を間違えた場合でもja-JPと正しいコードが返されます。
指定したIDから言語コードと国コードを辞書にして取得するには(+ componentsFromLocaleIdentifier)メソッドを使用します。ja-JPを渡すと{kCFLocaleCountryCodeKey = JP;kCFLocaleLanguageCodeKey = ja;}として辞書(NSDictionary)が返されます。
国コードと言語コードの辞書でIDを取得するには(+ localeIdentifierFromComponents)メソッドを使用します。
指定した文字列から正規のIDにするには(+ canonicalLanguageIdentifierFromString)メソッドを使用します。
Windowsロケールコード(LCID)からロケールIDを取得するには(+ localeIdentifierFromWindowsLocaleCode)メソッドを使用します。逆の場合は(+ windowsLocaleCodeFromLocaleIdentifier)メソッドを使用します。
言語のリストを取得
設定>一般>言語環境>言語で表示される、言語の配列を得るには(+ preferredLanguages)メソッドを使います。
言語での文字や行の向き
ロケールIDから文字の向きを取得するには(+ characterDirectionForLanguage)メソッドを使用します。ja-JPであればNSLocaleLanguageDirectionLeftToRight(左から右)が返されます。
ロケールIDから行の向きを取得するには(+ lineDirectionForLanguage)メソッドを使用します。ja-JPであればNSLocaleLanguageDirectionTopToBottom(上から下)が返されます。
適合するプロトコル
メソッド
システムロケール情報の取得
+ availableLocaleIdentifiers
+ ISOCountryCodes
+ ISOCurrencyCodes
+ ISOLanguageCodes
+ commonISOCurrencyCodes
ロケールの変換
+ canonicalLocaleIdentifierFromString:
+ componentsFromLocaleIdentifier
+ localeIdentifierFromComponents
+ canonicalLanguageIdentifierFromString
+ localeIdentifierFromWindowsLocaleCode
+ windowsLocaleCodeFromLocaleIdentifier