"$229,000"
の形式でバックナンバーを送信するサーバーと通信しています。私たちは次のように番号にこれを変換するためにNSNumberFormatter
を使用iOS 10 NumberFormatterはNILを返しますが、iOS9、iOS8、iOS7で動作します
:
IOS-10GM未満の任意のiOSバージョンにNSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle];
[formatter setCurrencyCode:@"US"];
[formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
[formatter setCurrencySymbol:@""];
、通貨記号は、空の文字列またはさもなければnilフォーマッタが失敗し、nilを返すことがあります。
しかし、iOS-10では、通貨記号を"$"
として追加しない限り、上記のコードは失敗します。
iOSのバージョンを確認する以外の方法はありますか(NSFoundationVersionNumber
経由)ですか?
[formatter setLenient:YES]を追加しないでください。あなたの文字列にスペースがあれば。 – Reaper