博客园都不知道怎么外链图片……
- (void)numToString:(double)num{
int iLen,iNum,iAddZero=0;
NSMutableString *szChMoney = [[NSMutableString alloc] init];
NSArray *hzUnit = @[@"分",@"角",@"元",@"拾",@"佰",@"仟",@"万",@"拾",@"佰",@"仟",@"万",@"亿",@"拾",@"佰",@"仟",@"万",@"拾",@"佰",@"仟"];
NSArray *hzNum = @[@"零",@"壹",@"贰",@"叁",@"肆",@"伍",@"陆",@"柒",@"捌",@"玖"];
NSString *szNum = [NSString stringWithFormat:@"%18.0f",num*100];
szNum = [szNum stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
iLen = szNum.length;
if ((iLen > 18) || (iLen == 0) || num == 0) {
return;
}
for (int i = 0; i < iLen; i++) {
iNum = [[szNum substringWithRange:NSMakeRange(i, 1)] intValue];
if (iNum == 0) {
iAddZero++;
}
else {
if (iAddZero > 0) {
[szChMoney appendString:@"零"];
}
[szChMoney appendString:hzNum[iNum]];
iAddZero = 0;
}
if (iNum != 0 //数字不等于0 添加单位
|| iLen - i == 3 //处理个位单位
|| iLen - i == 11 //处理亿位单位
|| ((iLen - i + 1) % 8 == 0 && iAddZero < 4)) //处理万位单位
{
[szChMoney appendString:hzUnit[iLen-i-1]];
}
}
if ([[szNum substringWithRange:NSMakeRange(iLen-2, 2)] isEqualToString:@"00"]) {
[szChMoney appendString:@"整"];
}
NSLog(@"%@",szChMoney);
}