如1001,转化为一千零一元,10100100.12为一千零一十万零一百元一角二分。
public static class NumberChineseUtils
{
/// <summary>
/// double类型转化为汉字金额。
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
public static string ConvertToStrMoney(double number)
{
if (number.IsEqZero())
return "零元";
string res = "";
number = CnMath.Round(number, 2);
///读取整数部分,和小数部分
var numbers = number.ToString().Split('.');
string integer = numbers[0];
///整数部分以4位来进行转换
var integerLen = integer.Length / 4;
///整数部分的位数为非4的倍数,求出余数值
var integerY4Num = integer.Length % 4;
int integerC4Num = integerY4Num > 0 ? integerLen + 1 : integerLen;
///超出千亿,不予显示
if (integerC4Num > 3) return null;
for (int i = 1; i < integerC4Num + 1; i++)
{
///截取出的数字
string schar = "";
///截取部分的数值的索引值
var beginindex = integerY4Num > 0 ? 4 * (i - 2