国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

NET人民幣大寫

2019-11-14 16:22:53
字體:
來源:轉載
供稿:網友

/***
** HongShijin
** Me@HongShijin.com
** 2009-3-15 10:13:00.00000
** text/C#
***/

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(object input)
{
var d = decimal.Zero;
if (input == null)
return ToSuperRMB(d);

if (input is decimal)
return ToSuperRMB((decimal)input);

if (input is double)
return ToSuperRMB(new decimal((double)input));

if (input is float)
return ToSuperRMB(new decimal((float)input));

if (input is int)
return ToSuperRMB(new decimal((int)input));

if (input is long)
return ToSuperRMB(new decimal((long)input));

if (input is uint)
return ToSuperRMB(new decimal((uint)input));

if (input is ulong)
return ToSuperRMB(new decimal((ulong)input));

if (decimal.TryParse(input.ToString(), out d))
return ToSuperRMB(d);

return input.ToString();//return ToSuperRMB(d);//
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(ulong input)
{
return ToSuperRMB(new decimal(input));
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(uint input)
{
return ToSuperRMB(new decimal(input));
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(long input)
{
return ToSuperRMB(new decimal(input));
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(int[] input)
{
return ToSuperRMB(new decimal(input));
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(int input)
{
return ToSuperRMB(new decimal(input));
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(float input)
{
return ToSuperRMB(new decimal(input));
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(double input)
{
return ToSuperRMB(new decimal(input));
}

/// <summary>
/// 轉換人民幣大寫
/// </summary>
/// <param name="input">數字輸入</param>
  /// <returns>大寫金額</returns>
public static string ToSuperRMB(decimal input)
{
var n = "零壹貳叁肆伍陸柒捌玖";
var u = "仟佰拾京仟佰拾吉仟佰拾兆仟佰拾億仟佰拾萬仟佰拾圓角分厘毫";//"仟佰拾京仟佰拾吉仟佰拾兆仟佰拾億仟佰拾萬仟佰拾圓角分厘毫"
var m = input;
if (m > decimal.Zero)
m *= 10000M;
else
m *= -10000M;
var t = m.ToString("0");
if (t == "0")
return "零圓整";

if (t.Length > u.Length)
throw new ArgumentOutOfRangeException();

u = u.Substring(u.Length - t.Length);
for (var i = t.Length - 1; i >= 0; i--)
t = t.Remove(i) + n[t[i] - '0'] + u[i] + t.Substring(i + 1);
t = Regex.Replace(t, "零+[^圓萬億兆吉京]", "零", RegexOptions.Compiled); //t = "壹仟零佰零拾零京叁仟零佰伍拾貳吉零仟零佰零拾零兆叁仟伍佰貳拾零億肆仟零佰貳拾零萬零仟零佰零拾伍圓壹角零分零厘伍毫";
t = Regex.Replace(t, "零{2,}", "零", RegexOptions.Compiled); //t = "壹仟零零零京叁仟零伍拾貳吉零零零零兆叁仟伍佰貳拾零億肆仟零貳拾零萬零零零伍圓壹角零零伍毫"
t = Regex.Replace(t, "零+([圓萬億兆吉京])", "$1", RegexOptions.Compiled); //t = "壹仟零京叁仟零伍拾貳吉零兆叁仟伍佰貳拾零億肆仟零貳拾零萬零伍圓壹角零伍毫"
t = Regex.Replace(t, "([萬億兆吉京])[萬億兆吉京]+", "$1", RegexOptions.Compiled); //t = "壹仟京叁仟零伍拾貳吉兆叁仟伍佰貳拾億肆仟零貳拾萬零伍圓壹角零伍毫"
t = Regex.Replace(t, "^[萬億兆吉京]+", string.Empty, RegexOptions.Compiled); //"壹仟京叁仟零伍拾貳吉叁仟伍佰貳拾億肆仟零貳拾萬零伍圓壹角零伍毫"
if (t[0] == '零')
t = t.Substring(1);
if (t[t.Length - 1] == '零')
t = t.Remove(t.Length - 1);
if (t[t.Length - 1] == '圓')
t = t + "整";
if (input >= decimal.Zero)
return t;

return "負" + t;////負
}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌海市| 奉节县| 库尔勒市| 潮安县| 依兰县| 富阳市| 时尚| 通榆县| 邹城市| 德清县| 精河县| 昌都县| 沈丘县| 彩票| 仙桃市| 温州市| 灵璧县| 敦煌市| 玉屏| 通化市| 长兴县| 阿巴嘎旗| 闽清县| 新晃| 瓮安县| 比如县| 南城县| 常州市| 凤城市| 阿城市| 广南县| 建阳市| 手机| 涟源市| 卢龙县| 北海市| 普安县| 易门县| 重庆市| 舞钢市| 开封县|