阿拉伯数字转换为大写金额
来源:互联网 发布:淘宝女装宝贝描述 编辑:程序博客网 时间:2024/05/01 03:56
遇到一个阿拉伯数字转换为大写金额的需求,看网上有的写的过于复杂,但是也有的写的特变简洁,自己写了一个仅供参考,如有问题,请及时指出,及时改正,谢谢!
/** * * @param string 阿拉伯数字格式字符串 * * @return 返回一个大写金额 */-(NSString*)getCnMoneyByString:(NSString*)string{ NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; numberFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"]; [numberFormatter setNumberStyle:NSNumberFormatterSpellOutStyle]; [numberFormatter setMinimumFractionDigits:2]; [numberFormatter setMaximumFractionDigits:6]; [numberFormatter setFormatterBehavior:NSNumberFormatterBehaviorDefault]; NSString *formattedNumberString = [numberFormatter stringFromNumber:[NSNumber numberWithDouble:[string doubleValue]]]; //通过NSNumberFormatter转换为大写的数字格式 eg:一千二百三十四 //替换大写数字转为金额 formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"一" withString:@"壹"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"二" withString:@"贰"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"三" withString:@"叁"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"四" withString:@"肆"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"五" withString:@"伍"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"六" withString:@"陆"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"七" withString:@"柒"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"八" withString:@"捌"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"九" withString:@"玖"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"〇" withString:@"零"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"千" withString:@"仟"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"百" withString:@"佰"]; formattedNumberString = [formattedNumberString stringByReplacingOccurrencesOfString:@"十" withString:@"拾"]; //对小数点后部分单独处理 if ([formattedNumberString rangeOfString:@"点"].length>0) { NSArray* arr = [formattedNumberString componentsSeparatedByString:@"点"]; NSMutableString* lastStr = [[arr lastObject] mutableCopy]; if (lastStr.length>=2) { [lastStr insertString:@"分" atIndex:lastStr.length]; } if (![[lastStr substringWithRange:NSMakeRange(0, 1)]isEqualToString:@"零"]) { [lastStr insertString:@"角" atIndex:1]; } formattedNumberString = [[arr firstObject] stringByAppendingFormat:@"元%@",lastStr]; }else{ formattedNumberString = [formattedNumberString stringByAppendingString:@"元"]; } return formattedNumberString; }
0 0
- 阿拉伯数字转换为大写金额
- 阿拉伯数字金额转换为中文大写
- 阿拉伯数字金额转换为汉语大写
- C#阿拉伯数字金额转换为中文大写金额
- 把阿拉伯数字转换为大写汉字[对应金额]
- 把阿拉伯数字的金额转换为中文大写数字
- 大写金额转换成阿拉伯数字金额
- 阿拉伯数字转换成中文大写金额
- js将阿拉伯数字转换成大写金额
- 金额转换为大写
- 金额转换为大写
- 金额转换为大写
- 把阿拉伯数字转换为大写
- 阿拉伯数字转换为大写汉字
- 阿拉伯数字转换成金额大写金额(包括小数)
- JavaScript把阿拉伯数字的金额转换成大写金额
- 超级简单的大写金额转换--阿拉伯数字转中文大写
- 能将人民币金额从阿拉伯数字转换为大写汉字表示
- 必须记住的756-33-44-66
- Json转换利器Gson之实例一-简单对象转化和带泛型的List转化
- ASM CRS 实例启动和关闭
- ZOJ 3810 A Volcanic Island
- 报ORA-4031错误时,我们通常可以根据Oracle无法分配多少字节的内存,来判断共享池碎片的严重程度,以下是4031错误官方的解释
- 阿拉伯数字转换为大写金额
- 11gR2启动ASM实例时遭遇ORA-29701
- ASP.NET开发,简化与封装
- 做前端开发的,必须收藏的一份关于用户体验的布局设计
- Calling Fortran functions from C++ by means of shared libraries
- Android NDK(r9d)开发简介
- 『IOS』使用优雅的锚点开发ios
- 通过Spring Resource接口获取资源
- SqlServer索引及优化详解