6 是否以“壹拾”开头,如果是就可以把它变为“拾” bool isStartOfTen = false; while (Num >=10) { if (Num == 10) { isStartOfTen = true; break; } //Num的数位 NumLevel currentLevel = GetNumLevel(Num); int numExponent = this.NumLevelExponent[(int)currentLevel]; Num = Convert.ToInt32(Math.Floor(Num / Math.Pow(10, numExponent))); if (currentLevel == NumLevel.Ten && Num == 1) { isStartOfTen = true; break; } } return isStartOfTen; 7 合并大于兆连个数组转化成的货币字符串
/// <summary> /// 合并分开的数组中文货币字符 /// </summary> /// <param name="tillionNums"></param> /// <returns></returns> private string ContactNumChinese(double[] tillionNums) { string uptillionStr = CalculateChineseSign(tillionNums[0], NumLevel.Trillion, true, IsStartOfTen(tillionNums[0])); string downtrillionStr = CalculateChineseSign(tillionNums[1], null, true,false); string chineseCharactor = string.Empty; //分开后的字符是否有跳位 if (GetNumLevel(tillionNums[1] * 10) == NumLevel.Trillion) { chineseCharactor = uptillionStr + NumLeverChineseSign[(int)NumLevel.Trillion] + downtrillionStr; } else { chineseCharactor = uptillionStr + NumLeverChineseSign[(int)NumLevel.Trillion]; if (downtrillionStr != "零元整") { chineseCharactor += NumChineseCharacter[0] + downtrillionStr; } else { chineseCharactor += "元整"; } } return chineseCharactor; }
|