iOS杂记之NSNumberFormatter用法

double  testNum =3.7999;

NSNumberFormatter*formatter = [[NSNumberFormatteralloc] init];

typedef CF_ENUM(CFIndex, CFNumberFormatterRoundingMode) {

           kCFNumberFormatterRoundCeiling = 0,  //四舍五入,直接输出4

          kCFNumberFormatterRoundFloor = 1 ,    //保留小数输出3.8

          kCFNumberFormatterRoundDown = 2,  //加上了人民币标志,原值输出¥3.8

          kCFNumberFormatterRoundUp = 3,      //本身数值乘以100后用百分号表示,输出380%

          kCFNumberFormatterRoundHalfEven = 4,//输出3.799999999E0

          kCFNumberFormatterRoundHalfDown = 5,//原值的中文表示,输出三点七九九九。。。。

          kCFNumberFormatterRoundHalfUp = 6//原值中文表示,输出第四
----------------------------------------------------------------------------------

       /*     typedef NS_ENUM(NSUInteger, NSNumberFormatterStyle) {

            NSNumberFormatterNoStyle = kCFNumberFormatterNoStyle,    

            NSNumberFormatterDecimalStyle = kCFNumberFormatterDecimalStyle,

            NSNumberFormatterCurrencyStyle = kCFNumberFormatterCurrencyStyle,

            NSNumberFormatterPercentStyle = kCFNumberFormatterPercentStyle,

            NSNumberFormatterScientificStyle = kCFNumberFormatterScientificStyle,

            NSNumberFormatterSpellOutStyle = kCFNumberFormatterSpellOutStyle,

            NSNumberFormatterOrdinalStyle NS_ENUM_AVAILABLE(10_11, 9_0) =                         kCFNumberFormatterOrdinalStyle,

            NSNumberFormatterCurrencyISOCodeStyle NS_ENUM_AVAILABLE(10_11, 9_0) = kCFNumberFormatterCurrencyISOCodeStyle,

            NSNumberFormatterCurrencyPluralStyle NS_ENUM_AVAILABLE(10_11, 9_0) = kCFNumberFormatterCurrencyPluralStyle,

           NSNumberFormatterCurrencyAccountingStyle NS_ENUM_AVAILABLE(10_11, 9_0) = kCFNumberFormatterCurrencyAccountingStyle,
};*/
----------------------------------------------------------------
例子:
    formatter.numberStyle = kCFNumberFormatterRoundHalfDown;
    NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_Hans"];//       
    formatter.locale = locale;
    NSString*string = [formatter stringFromNumber:NSNumbernumberWithDouble: testNum]];
    NSLog(@"%@",string);};

注意:必须手机系统语言为中文的前提下才可用,如果是非中文环境需要加上中文输出限制.为准确输出,建议使用double类型


中文语言环境输出.png

英文语言环境输出.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 2018-06-14轻松成为效率达人19-笑来老师的高效技巧10-不写就出局第二十篇 有的人轻轻松松就能全部兼顾,...
    戴维O_O阅读 3,365评论 0 3
  • 打小时候,我们就被家长和老师们灌输了无数的天才人物故事,牛顿、爱因斯坦、高斯、达芬奇、莫扎特、居里夫人……,他们既...
    瑾大妞阅读 2,087评论 1 0
  • 文/西西 林立的檐下 是温暖此生的人间 我们都在努力跳脱 跳脱出一隅狭小的柴米油盐 却近乎执拗地热爱 屋檐下的柔软...
    花语清溪阅读 3,106评论 3 5
  • 一.简述总体内容 1.直播流程介绍 2.Mac搭建nginx+rtmp服务器(模拟推流拉流) 3.简单的集成推流拉...
    IIronMan阅读 12,414评论 10 64

友情链接更多精彩内容